[英]Stop git from bringing changes to master into my branch?
首先,我会说我对git还是比较陌生,而我更倾向于Eclipse git GUI。 无论如何,这是发生了什么:
git pull
,对master所做的更改被带入了我的工作区。 因此,即使我在签入这些更改之前就分支了,现在某些文件的非工作版本仍在我的工作空间中。这有点令人惊讶。
有人可以帮助我了解为什么git分支时会导入这些更改,以及如何控制这种行为吗? 至少,我想将未编译的文件还原为早期版本,并防止git将master的其他更改合并到我的分支中,直到准备好合并回master。 理想情况下,我想引入其他开发人员所做的一些更改,因为项目中的某些文件很难合并。
这是我的存储库副本的git config。 我在MYBRANCH上:
[core]
symlinks = false
repositoryformatversion = 0
filemode = false
logallrefupdates = true
[remote "origin"]
url = ssh://git@1.2.3.4:7999/foo/bar.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[branch "SOMEOTHERBRANCH"]
remote = origin
merge = refs/heads/master
[branch "MYBRANCH"]
remote = origin
merge = refs/heads/master
所以这里的问题是MYBRANCH
被设置为跟踪origin/master
,这意味着当您执行git pull
, origin/master
将被合并到其中。 您可以通过执行git config --unset branch.MYBRANCH.merge
。 假设存在一个origin/MYBRANCH
,您可以通过执行git branch -u origin/MYBRANCH
(在MYBRANCH上)来跟踪它。 如果origin/MYBRANCH
还不存在,则可以使用git push -u origin MYBRANCH
创建/跟踪它。
另外,要从分支还原更改,您应该看到命令git reset
http://git-scm.com/docs/git-reset
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.