2013-03-28 42 views
4

我想挑选git中的提交,它添加了一堆文件,但也修改了我的分支中尚不存在的文件。git樱桃挑选合并删除文件

有冲突哪里要添加的文件都上演,并在提交更改,但不会在分支尚不存在不演出和,被列为该文件:

deleted by us: app/changed_file.rb 

如果我只提交暂存文件,当changed_file.rb最终合并到分支中时会引起问题吗?

回答

3

https://www.kernel.org/pub/software/scm/git/docs/git-cherry-pick.html

摘樱桃创建提交,所以如果你省略这并不在你的分支存在,但存在于分支你要合并的最终什么都不会发生文件。

mkdir test && cd test && git init && touch foo.txt 
git add foo.txt && git commit -m "Init repo" 
git branch test && git checkout test && vi foo.txt 
git add foo.txt && git commit -m "Changed foo on branch test" 
git checkout master && touch bar.txt 
git add bar.txt && git commit -m "Create bar.txt" 
vi bar.txt 
touch baz.txt && git add . && git commit -m "Will be cherry picked" 
git checkout test && git cherry-pick bfd1b58 
git rm bar.txt && git commit 
git checkout master && git merge test 

,并作为ls结果:bar.txt baz.txt foo.txt

1

可以直接删除从提交你是樱桃,如果不需要它捡...

的git RM FILE_NAME该文件

git commit

- 这里确保您的提交信息包含更改ID:行作为最后一段

混帐推起源HEAD:裁判/为/ branch_name

这样你不会得到任何冲突,它西港岛线让你更容易合并下一次..