您可以使用TortoiseGit与索引/暂存区进行交互吗?

| 我的任务是向我的同事们介绍有关Git的演讲,他们几乎完全是Windows用户,他们习惯于使用TortoiseCVS。我已经使用Git大约一年了,但是我几乎只使用Unix命令行界面。 因此,我一直在尝试熟悉Windows GUI Git工具,包括TortoiseGit。但是在我看来,这不仅仅是Git命令行界面上的GUI外观,而且实际上完全抽象了一些东西,特别是索引。 例如,当我在Windows资源管理器中右键单击一个新的,未版本控制的文件时,我可以从TortoiseGit菜单中选择\“添加\”,然后稍后提交该文件,但是Git中已经存在的文件缺少此菜单项,在这种情况下,我只会看到选项“子模块添加”。 无法通过TortoiseGit与索引进行交互? 我正在寻找特别是
git add
git diff --cached
git reset HEAD
的类似物。 这是向Google小组发送的有关此消息,但这是去年夏天发出的。 我使用的是TortoiseGit 1.6.5.0版和msysgit 1.7.4.msysgit.0版,如果有关系的话。我是几天前安装的,所以它们可能是最新的。     
已邀请:
答案是:不,你不能。 对我而言,TortoiseGit是一种工具,可用于使从CVS过渡到Git的过程更加轻松(就像我在对TortoiseGit的回答是否使Tor像TortoiseSVN一样容易使用Git的回答中所写的那样)。但是一旦完成过渡并且您的同事对Git更加熟悉了,就该提出真正的工具了。 与Git交互的最强大的工具是命令行。期。 Git Gui和
gitk
也可用,带来一些便利,但缺乏资源管理器集成(至少在覆盖方面)。但是在有多头开发箱的时代:为什么不让Git Gui在一个监视器(用于一般管理的东西)上打开而在另一个监视器上工作呢? 最近,我还在团队中对Git进行了介绍。我们习惯了TortoiseSVN,因此我也向他们展示了如何使用Tortoise添加文件,如何提交等。但是在每张幻灯片上,我还指出了他们必须在Git Bash中键入的内容才能获得相同的结果。这样,一旦他们有了更多的经验,他们就可以拿出简介幻灯片并浏览他们必须使用的命令。     
在一定程度上,您可以在TortoiseGit中执行这些操作。例如,有一个重置对话框。它们并不是突出的特征(我认为),因为使用TortoiseGit意味着您对git索引的需求减少了-有方便且功能强大的GUI方法可以选择和查看要提交的内容,因此索引变得不必要了。 话虽如此,TortoiseGit为初学者和高级git用户带来了很多有用的东西,尽管它只是命令行的补充,而不是替代。 作为额外的过渡,您可能对我使用的批处理文件感兴趣,该批处理文件通过允许从命令行方便地调用那些TortoiseGit GUI窗口而使行稍微模糊了:https://github.com/ses4j/tgit     
真相比到目前为止的答案还要糟糕。我尝试了一个实验:“ 0”对索引进行一些更改,还原工作树以匹配当前的HEAD,然后运行TortoiseGit提交。 它将更改后的文件列为有资格包含在提交中的文件之一,因此它知道已进行了某些更改,这给人的印象是,至少它知道如何完成已由其他工具登台的提交。 。但是,当我选择它时,提交实际上使用了工作树副本并破坏了索引中未提交的数据,并且提交最终成为该文件上的禁止操作。 一个危险的工具,我想我会避免使用它。     
最近遇到了对相同文件进行更改时需要使用“ 0”来应用存储的需求,发现我可以使用一个技巧:在存储库中(创建)新文件(例如.txt),打开提交窗口,将显示更改的文件以及新文件。选择所有更改的文件和新文件。右键单击新文件,您将在命令
Add
。它将对所有选定文件应用“ 0”。之后,您只需
Revert
新文件。 所有这些使我可以对修改后的文件应用隐藏功能。     

要回复问题请先登录注册