我想对我的仓库中的一个文件进行更改,然后强制git认为该文件未合并,并像这样在git status
中显示:
# Unmerged paths:
# (use "git reset HEAD <file>..." to unstage)
# (use "git add <file>..." to mark resolution)
#
# both modified: lib/delayed/recipes.rb
#
这是我的问题的全部内容。继续阅读以获取解释,因为我知道那将是首先被问到的事情。
这里的目的是修复 Piston 的错误,它会在索引中留下合并冲突,这些冲突很容易被忽视。
piston update
在 Git 存储库中的工作方式是:
- 将远程仓库克隆到一个新的临时git仓库中
- 将该临时仓库检出到我们看到的最后一次提交(保存在.piston.yml中)
- 将我们的本地仓库(在新分支中)检出到.piston.yml被更新的最后一次提交
- 将本地仓库的文件复制到临时仓库中
- 提交所有更改到临时仓库(这些是我们上次更新此供应商项目时的本地更改)
- 在临时仓库中运行
git merge master
,将我们的本地更改与远程仓库的更改合并 - 忽略合并冲突(!),将所有文件从临时仓库复制到我们的本地仓库
- 将这些文件(在我们的新临时分支中)提交到我们的本地仓库
- 将本地仓库切换回原始起点
- 将临时分支合并到本地仓库(添加我们进一步进行的任何更改)
我希望通过允许带有合并冲突的文件提交到临时分支来解决这个问题,但在最后(运行git merge --squash
之后),我想告诉git关于在临时仓库中有合并冲突的文件。