这个问题:
Can you interact with the index/staging area with TortoiseGit?
采取TortoiseGit的主要功能不的立场,以消除对git命令行的需要,一般来说,我同意。
然而,git-gui有一个我经常使用的功能(可能是为了弥补糟糕的工作流程):能够选择性地暂停或取消当前补丁中的帅哥或线条,以便将一堆散布的变化分成连贯的变化集多次提交。
命令行替代方案(对我而言,无论如何)有点笨拙,所以,理想情况下,我想在TortoiseGit中做同样的选择性提交。
到目前为止,我还没有找到办法做到这一点,我怀疑,从另一个问题的答案来看,这是不可能的。有人可以证实这一点吗?
答案 0 :(得分:53)
是的,现在就行了:见issue 222 - 它采用与TortoiseSVN相同的方法:
- 右键单击文件,选择“提交后恢复”
- TSVN在工作副本之外创建文件的副本,该文件在>中以不同方式显示提交对话框(可能是叠加图标或不同的颜色)
- 用户可以双击该文件在TMerge或其他差异工具中打开它并撤消所有不应提交的更改,然后保存这些更改
- 提交
提交完成后,- 将原始文件的副本移回
答案 1 :(得分:14)
Windows上唯一一个完全支持GUI的选择性暂存的客户端是SmartGit。
因此,与TortoiseGit或GitExtensions相比,它也有弱点。
对我来说,SmartGit中的主要showstoppers是:
我记得还有其他的东西,但现在评估SmartGit的最新版本我无法找到它。无论是固定/添加还是我忘记了那段时间我不能做的事情。
在任何情况下,我都会使用GitEx和TortoiseGit来处理某些事情,而对于其他任何事情,控制台都是最好的工具。
答案 2 :(得分:5)
从issue 222的外观来看,“add -p
”功能尚未实现。
您是否可以添加部分提交文件的支持? (
git add -p
)。
我理解TortoiseGit的工作方式与普通的“git index
”略有不同,但我仍然希望以某种方式支持它。我只想对文件进行一些更改 例如,仅提交文件的单行修复,并将其余部分保留在工作副本中。
答案 3 :(得分:2)
SourceTree(https://www.sourcetreeapp.com/)具有非常直观的GUI用于选择性分段。它与BitBucket集成(毕竟它是由同一家公司),但可以轻松地与任何git存储库一起使用。
我仍然会并行使用TortoiseGit,特别是因为修改图等一些不错的功能。
答案 4 :(得分:0)
从2020年开始有实现这个功能的pull request,希望尽快合并。