如何修改 GitKraken 中的提交以取消暂存文件?
How can I amend a commit in GitKraken to unstage a file?
我刚刚将三个文件提交给 Git(Class1.java、Class2.java 和 Config.xml)。然后我意识到我犯了一个错误,并且实际上并不想要 Config.xml 在那次提交中。现在我想修改我的提交并取消对 Config.xml 的更改,以便(修改后的)提交仅包含对 Class1.java 和 Class2.java.
的更改
这在 Git Gui 中很容易; select "Amend previous commit","Staged Changes (Will Commit)" 列表显示了上一次提交中更改的所有三个文件。我可以取消暂存 Config.xml 并提交。
但是在 GitKraken 中,当我检查 "Amend" 时,它没有显示上次提交的三个文件;它只是向我展示了一张白纸。没有明确的方法可以从我正在修改的提交中取消暂存其中一个文件。
我知道我可以使用命令行(或 Git Gui)。但是有什么方法可以从 GitKraken 修改之前的提交并简单地从中删除一个文件的更改吗?
你的观察是正确的:你不能。
据我所知,目前无法通过修改从提交中删除更改。您只能向提交添加其他更改(这当然可能会使您之前提交的某些更改无效)。正如您正确观察到的那样,这是因为当您检查 Amend
时 GK 没有向您显示之前的提交,您只能添加未暂存的更改。
纯 GK 解决方法是软重置到先前的提交和仅包含 Class1.java
和 Class2.java
的新提交。结果是一样的,因为修改也会创建一个新的提交。
我刚刚将三个文件提交给 Git(Class1.java、Class2.java 和 Config.xml)。然后我意识到我犯了一个错误,并且实际上并不想要 Config.xml 在那次提交中。现在我想修改我的提交并取消对 Config.xml 的更改,以便(修改后的)提交仅包含对 Class1.java 和 Class2.java.
的更改这在 Git Gui 中很容易; select "Amend previous commit","Staged Changes (Will Commit)" 列表显示了上一次提交中更改的所有三个文件。我可以取消暂存 Config.xml 并提交。
但是在 GitKraken 中,当我检查 "Amend" 时,它没有显示上次提交的三个文件;它只是向我展示了一张白纸。没有明确的方法可以从我正在修改的提交中取消暂存其中一个文件。
我知道我可以使用命令行(或 Git Gui)。但是有什么方法可以从 GitKraken 修改之前的提交并简单地从中删除一个文件的更改吗?
你的观察是正确的:你不能。
据我所知,目前无法通过修改从提交中删除更改。您只能向提交添加其他更改(这当然可能会使您之前提交的某些更改无效)。正如您正确观察到的那样,这是因为当您检查 Amend
时 GK 没有向您显示之前的提交,您只能添加未暂存的更改。
纯 GK 解决方法是软重置到先前的提交和仅包含 Class1.java
和 Class2.java
的新提交。结果是一样的,因为修改也会创建一个新的提交。