web-dev-qa-db-ja.com

TortoiseGitはgit-guiのような選択的なステージングを可能にしますか?

この質問:

TortoiseGitでインデックス/ステージングエリアを操作できますか?

tortoiseGitの主な機能はnotであるという立場を取り、gitコマンドラインの必要性を排除します。一般的には同意します。

ただし、git-guiには、私がよく使用する機能があります(おそらく、悪いワークフローを補うために):散在する変更の束を複数のコミットで一貫した変更セットに分割するために、現在のパッチからハンクまたは行を選択的にステージングまたはステージング解除する機能。

コマンドラインの代替手段(とにかく私にとって)は少し不格好なので、理想的には、TortoiseGitで同じ選択的コミットを実行したいと思います。

これまでのところ、これを行う方法は見つかりませんでした。他の質問への回答から、それは不可能だと思います。誰かがこれを確認できますか?

40

これまでに見たGUIでの選択的ステージングを完全にサポートしているWindows上の唯一のクライアントは、 SmartGit です。

したがって、TortoiseGitやGitExtensionsと比較して、弱点もあると言えます。

私にとって、SmartGitの主なショートッパーは次のとおりです。

  1. 2つのリビジョンを比較できない。あなたは一方とその親の間の違いしか見ることができませんでした(TortoiseGitはそれをすることができます)。
  2. すべてに興味がない場合(TortoiseGitで可能)、ログを特定のフォルダーに制限できない(まあ、それは少し奇妙です。方法が見つからなかった可能性があります)。
  3. VisualStudioとの統合(やや主観的ですが、GitExにはそれがあり、非常に便利です)

他に何かあったことを覚えていますが、SmartGitの最後のバージョンを評価すると、それが見つかりません。修正/追加されたか、その時にできないことを忘れてしまいました。

いずれにせよ、私はいくつかのことにGitExとTortoiseGitの両方を使用しており、他のすべてにはコンソールが最良のツールです。

15
Ivan Danilov

はい、今はそうです: issue 222 を参照してください-TortoiseSVNと同じアプローチを取ります。

  • ファイルを右クリックし、「コミット後に復元」を選択します
  • TSVNは、作業コピーの外部にファイルのコピーを作成します。ファイルは、コミットダイアログで異なる方法で表示されます(オーバーレイアイコンまたは別の色の場合があります)
  • ユーザーはファイルをダブルクリックしてTMergeまたはその他の差分ツールで開き、コミットしてはならないすべての変更を元に戻し、それらの変更を保存できます。
  • コミット
  • コミットが終了すると、元のファイルのコピーが元に戻されます

TSVN Issue 68から

54
Duncan Smart

issue 222 の外観から、 "add -p "機能はまだ実装されていません。

ファイルを部分的にコミットするためのサポートを追加できますか? (git add -p)。
TortoiseGitの動作方法が通常の「git index "ですが、それでも何らかの形でこれをサポートしたいと思います。

ファイルのいくつかの変更のみをコミットしたいと思います。
たとえば、ファイルの1行の修正のみをコミットし、残りは作業コピーに残します。

5
VonC

SourceTree( https://www.sourcetreeapp.com/ )には、選択的なステージングのための非常に直感的なGUIがあります。 BitBucketと統合するように作られていますが(結局のところ同じ会社によるものです)、どのgitリポジトリでも簡単に操作できます。

特にリビジョングラフのようないくつかの素晴らしい機能のために、私はまだTortoiseGitを並行して使用しています。

3
EwgB