我在本地使用 iOS 版故事板进行了更改。 我无法将它们与我的一个朋友正确合并,所以我放弃了。 我的更改很小,我可以稍后重做。 我想做的是在没有故事板的情况下反转最后一次提交,只保留我的代码。 我尝试遵循以下内容:
如何在 Git 中撤消上次提交?
我是怎么解释的:
git reset --soft HEAD^
在此之后,我做了 git 状态,我在暂存区域看到我的所有文件都以绿色显示,包括故事板。 所以我想取消它们(或者我是这么认为的)。 所以我做到了
git reset HEAD MainStoryboard*
然后我没有看到我在 git 状态上的故事板文件。 我在未上演的区域也没有看到他们穿红色衣服,我觉得很奇怪。 所以我然后做了
git commit -a -c ORIG_HEAD
它允许我更改我的提交消息,但提交是相同的。 它仍然提交我的故事板文件。 所以我不确定这里发生了什么.... 有什么想法吗? 提前谢谢。
在进行重置时,尝试使用 -- 将文件列表与修订版分开
git reset HEAD -- file_list
也使用简单提交(不是修正形式)
git add your_changed_files
git 提交
如果取消暂存模式不起作用,您可以尝试"GIT:我想取消暂存与特定模式匹配的所有文件"中的方法:
for i in `git status --porcelain | grep '^M.*MainStoryboard.*$' | sed 's/^M +//'`; do
git reset HEAD -- "$i"
done