21

私は git ステージング エリアが本当に好きではありません。生活が不必要に混乱するだけです。

すべての編集済みファイルと新しいファイルが単一のコンテキストにあるように無効にすることはできますか? そのため、git diff はリポジトリと作業ディレクトリの間の差分を表示し (また、git diff --cached と入力する必要はありません)、git ci は作業コピー全体 (ステージングされた部分だけでなく) をチェックします。

そうでない場合は、ステージングがないように見える代替手段 (設定のセットアップなど) も素晴らしいでしょう。

別の DVCS に変更するオプションはありません。また、ステージング エリアを気に入るようになりたくありません。これらを提案するために投稿しないでください:(

ありがとう、-ショーン

PS:私はこれをsuperuser.com、https: //superuser.com/questions/192022/disable-git-staging-areaで尋ねましたが、そのフォーラムは投稿がはるかに少ないようです(ここの4448と比較して、118のみがタグ付けされたgitです)

4

5 に答える 5

6

いいえ、あなたはそれを愛することを学びます.

もっと深刻なことに、git add -A; git commitおそらくあなたの友達です。そうすれば、ステージング エリアとのやり取り (およびメリット) のほとんどを回避できます。

git add -Aいつもよりパワフルですgit commit -a。新しいファイルを見つけるだけでなく、変更されたコンテンツをステージングし、作業ツリーに存在しなくなったファイルを削除します。

于 2010-09-30T20:38:51.683 に答える
4

エイリアスはあなたの友達です。

たとえば、最小限の入力で必要なことを行う diff コマンドを作成できます.gitconfig

[alias]
        di = diff HEAD
        co = commit -a

その後、簡単に行うことができgit di、独自の差分をgit co取得するか、独自の個人的なコミット コマンドを取得できます。

于 2010-09-30T20:59:13.297 に答える
2

git commit -a変更/削除されたすべてのファイルをコミットするために使用できます。追跡されていないファイルを手動で追加する必要があります。

私は Subversion から来ましたが、最初はステージング エリアにも戸惑いました。しかし、あなたはそれが非常に便利であることに気付くでしょう。テストした変更をステージングしたが、ビルドを壊すような変更をさらに加えた場合は、ステージングされた変更にリセットできます。

于 2010-09-30T20:37:59.953 に答える
1

ステージング領域は (IMO) Git の最大の強みの 1 つであり、他のほぼすべての DVCS との違いを実際に示しています。

使用できます

git commit -a

変更されたファイルを自動的に追加します。ただし、追跡されていないファイルの場合は、自分で行います。練習しgit add . && git commitます。

気に入らない場合は、別の VCS を使用してください。git リポジトリを使用する必要がありますか? hg-gitなど、互換性のある利用可能なプラグインのいくつかを参照してください。


個人的には、git と戦うのではなく、git の強みを利用することを学びます。大きな乱雑なブランチの真っ只中にいると想像してください。ただし、本番用にいくつかの選択的な変更をコミットする必要があります。ブームしgit add [files]てから、コミットしてプッシュします。他に何も台無しにせずに仕事に戻ります。他にも無数の例がありますが、おそらくこれが最も理解しやすいでしょう。

于 2010-09-30T20:38:50.143 に答える
-1

ステージングエリアが好きになることを学びたくありません。これらを提案するために投稿しないでください:(

他のすべてのように。ステージングエリアを好きになることを学ぶことをお勧めします。90% の確率で無視されますが、これは本当に便利です。

現在それが役に立たない場合は、コミットについて間違って考えていると思います。あなたはまだ単一のファイルまたはすべてを一度に考えています。コミットについて考える正しい方法は、機能/修正ごとであり、機能/修正は多くの場合、複数のファイルに分散されています。関連する変更を 1 つのコミットにグループ化する必要があります。また、変更のグループに現在の変更がすべて含まれていない場合もあります。ステージングが役立つのはそのときです。

これはあなたが聞きたいことではないことはわかっていますが、実際には、ツールと戦うのをやめ、それと一緒に暮らすことを学んだ瞬間は、ツールを使用することが「苦痛」でなくなる瞬間です.

于 2010-09-30T21:02:04.907 に答える