Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么在GIT上推送代码时会出现这个错误?也许创建一个分支是个好主意?_Git_Bitbucket_Git Push - Fatal编程技术网

为什么在GIT上推送代码时会出现这个错误?也许创建一个分支是个好主意?

为什么在GIT上推送代码时会出现这个错误?也许创建一个分支是个好主意?,git,bitbucket,git-push,Git,Bitbucket,Git Push,我试图使用GIT(从控制台)在我的存储库上推送我的项目的新版本,但我收到以下错误消息: $ git push origin master To https://bitbucket.org/MyUserName/glis-toolkit.git ! [rejected] master -> master (fetch first) error: failed to push some refs to 'https://MyUserName@bitbucket.org/MyUs

我试图使用GIT(从控制台)在我的存储库上推送我的项目的新版本,但我收到以下错误消息:

$ git push origin master
To https://bitbucket.org/MyUserName/glis-toolkit.git
 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to 'https://MyUserName@bitbucket.org/MyUserName/glis-toolkit.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
这意味着什么?什么意思是“推不动一些裁判”?这些“裁判”是什么

另一个需要考虑的问题是,我的BitBucket存储库上的版本是我的系统的工作版本(现在与本地版本大不相同)。我想保持它。也许为这个新版本创建一个分支会更好吗

如果这是一个解决方案,我如何创建分支并将此新版本推送到该分支上?

请使用

git pull origin <your branch> 
git拉原点
在推送代码之前。
这可能是因为其他人也在分支上推送了一些代码,因此git要求先拉取这些更改,然后将您的更改放到服务器上。

服务器上有您在本地没有的提交,如果要成功推送,服务器上会有两个提示,这是不允许的。你需要了解这意味着什么,这样你才能恰当地处理它。很可能您可以执行
git pull origin master
将远程更改与本地更改集成,并进行合并。@LasseV.Karlsen好的,只有一个疑问:在执行pull之前…我可以检查(使用控制台中的git)要检查我的本地版本和远程版本之间的区别,可以执行
git fetch
然后
git log master origin/master
,这将告诉您将与
git pull
合并什么。如果您想用更改创建分支,您可以这样做:
git branch feature/new\u branch
,然后是
git reset master origin/master
(确保所有命令都不会产生错误消息,如果它们产生,请停止,不要继续)我知道这个选项,但是本地的和远程的没有太大区别,所以我真的不想冒险改变本地的一些东西。我准备创建一个新的远程分支,并将本地分支推到其上,然后先复制,然后拉,然后比较两者。但是通常拉取就足够了,因为本地更改应该保留,当本地和远程在同一个位置不同时,也可能会发生一些冲突。@AndreaNobili如果要保存更改,可以创建临时分支