TortoiseGit是否允许选择性分期,如git-gui?

时间:2011-08-07 09:32:29

标签: git tortoisegit git-gui

这个问题:

Can you interact with the index/staging area with TortoiseGit?

采取TortoiseGit的主要功能的立场,以消除对git命令行的需要,一般来说,我同意。

然而,git-gui有一个我经常使用的功能(可能是为了弥补糟糕的工作流程):能够选择性地暂停或取消当前补丁中的帅哥或线条,以便将一堆散布的变化分成连贯的变化集多次提交。

命令行替代方案(对我而言,无论如何)有点笨拙,所以,理想情况下,我想在TortoiseGit中做同样的选择性提交。

到目前为止,我还没有找到办法做到这一点,我怀疑,从另一个问题的答案来看,这是不可能的。有人可以证实这一点吗?

5 个答案:

答案 0 :(得分:53)

是的,现在就行了:见issue 222 - 它采用与TortoiseSVN相同的方法:

  
      
  • 右键单击文件,选择“提交后恢复”
  •   
  • TSVN在工作副本之外创建文件的副本,该文件在>中以不同方式显示提交对话框(可能是叠加图标或不同的颜色)
  •   
  • 用户可以双击该文件在TMerge或其他差异工具中打开它并撤消所有不应提交的更改,然后保存这些更改
  •   
  • 提交
  •   提交完成后,
  • 将原始文件的副本移回
  •   
     

From TSVN Issue 68

答案 1 :(得分:14)

Windows上唯一一个完全支持GUI的选择性暂存的客户端是SmartGit

因此,与TortoiseGit或GitExtensions相比,它也有弱点。

对我来说,SmartGit中的主要showstoppers是:

  1. 无法比较两个修订版。你只能在一个人和它的父母之间看到差异(TortoiseGit可以)。
  2. 如果我对所有内容不感兴趣(TortoiseGit可以),无法(好吧,有点奇怪,我可能没有找到方法)将日志限制到某个文件夹。
  3. 与VisualStudio集成(有点主观,但GitEx有它,非常方便)
  4. 我记得还有其他的东西,但现在评估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,希望尽快合并。

https://github.com/TortoiseGit/TortoiseGit/pull/233