樱桃选取正在将从任意提交复制的差异序列应用于存储库的当前状态。如果其中一些差异与存储库的当前状态不一致,会发生什么情况?例如,如果其中一个diff修改了一个文件f,但是这个文件不再存在于当前仓库中呢?从与存储库当前状态不一致的提交中摘樱桃
0
A
回答
2
在这种情况下,会发生冲突。 Git暂停了樱桃选择,并等待你解决冲突或中止挑选樱桃。从概念上讲,这与a conflict that might arise due to a git merge
或git rebase
相同。
如果diff文件的一个修改什么文件f,但在当前库
的Git将提交你的选择保持文件之间你挑肥拣瘦这个文件不再存在,保持文件被删除或手动更新文件。
很容易看到它是如何工作的。
在您的文件系统中的某处(现有Git存储库之外),创建一个新目录并输入它。
mkdir cherry cd cherry
初始化一个空的Git仓库
git init
创建一个文件,并添加一些内容到它
echo "Some changes" > README.md
将文件添加到索引并提交更改
git add README.md git commit -m "Added some content to the readme"
创建并检查了一个新的分支
git checkout -b feature/readme-update
更改
README.md
文件再次echo "New content of README" > README.md
舞台并提交更改
git add README.md git commit -m "Added more to readme"
保存最后的哈希提交。
回去
master
和删除文件,提交更改git checkout master git rm README.md git commit -m "Removed the readme"
摘樱桃从
feature/readme-update
,你改变了README.md
文件git cherry-pick <commit-hash>
您的内容提交在你手上有冲突
[email protected] MINGW64 /c/repos/cherry (master) $ git cherry-pick <commit-hash> error: could not apply 4a99ca7... Added more to readme hint: after resolving the conflicts, mark the corrected paths hint: with 'git add <paths>' or 'git rm <paths>' hint: and commit the result with 'git commit' [email protected] MINGW64 /c/repos/cherry (master|CHERRY-PICKING)
git status
还会告诉你同一件事$ git status On branch master You are currently cherry-picking commit 4a99ca7. (fix conflicts and run "git cherry-pick --continue") (use "git cherry-pick --abort" to cancel the cherry-pick operation) Unmerged paths: (use "git add/rm <file>..." as appropriate to mark resolution) deleted by us: README.md
在这种情况下,你可以删除文件(接受
master
的变化),或添加它(接受更改你挑肥拣瘦)。另一种选择是以您认为合理的方式手动调整文件。无论什么样的变化,你接受,并将其应用到文件,将它们暂存并继续摘樱桃通过调用
git cherry-pick --continue
如果你困惑,不再想用樱桃挑选来进行,通过呼叫中止它
git cherry-pick --abort
相关问题
- 1. 哪个提交摘樱桃
- 2. Git的摘樱桃
- 3. 樱桃采摘Git中的一系列提交
- 4. 摘樱桃从不同的回购
- 5. git的稳定分支:找不樱桃采摘提交
- 6. Git:同步分支,包含以前樱桃采摘的提交与主
- 7. Git的摘樱桃老犯
- 8. 申请樱桃采摘
- 9. Git樱桃采摘范围
- 10. Git - 除了樱桃采摘主要的dev的日志提交
- 11. 樱桃采摘个人提交使用Git svn的
- 12. 当恢复git以前承诺如何樱桃采摘?
- 13. 在git中摘樱桃后dcommit到SVN
- 14. '致命:樱桃挑选失败'与Git
- 15. 在樱桃采摘的提交中使用git rebase有什么后果?
- 16. 如何在樱桃采摘后删除无主分支中的旧提交?
- 17. 哪个承诺是樱桃采摘?
- 18. 列表樱桃采摘切片方法
- 19. 合并跟踪Git樱桃采摘?
- 20. 为什么git的樱桃摘叶未提交的修改退出非零
- 21. 如何樱桃采摘从1分支到另一
- 22. Git - 樱桃选择一个单一的提交请求
- 23. 是Git的存储机制本质上是创建提交,然后樱桃采摘它?
- 24. git shortlog:如何排除“(从提交____挑选的樱桃)”等等?
- 25. Git樱桃挑选一个提交并将其放在下面
- 26. 如何确定Git中樱桃树的提交者?
- 27. git樱桃采摘到不同的基本目录
- 28. Git中的提交是否代表存储库的状态?
- 29. 不能樱桃挑选
- 30. 如何樱桃图片和第一个樱桃采摘补丁添加第二个补丁?