12

多くのファイルに対して 1 回のコミットで夜間に作業を保存しています。ファイルごとにコミットした方が良いのだろうかと思いますが、これはより多くの作業のようです。

今のままで問題ありませんが、コードを GitHub に置く予定なので、わかりやすくしたいと思っています。

git を使用している残りの皆さんは何をしているのか気になります。また、私のためにそれを綴ることができれば。私は Git が初めてで、Windows で TortoiseGit と gitk を使用しています。

4

2 に答える 2

19

いつコミットするか、何をコミットするかは芸術であり、白黒のルールはありません。そうは言っても、他のものよりも理解しやすい習慣があります。

一般に、理解しやすいようにコミットを最適化する必要があると思います。戻ってコミットの差分を読むと、変更で何を達成したかがわかりますか?

より具体的にしたい場合は、私が考えているすべきこととすべきでないことの長いリストを次に示します。

  • 小さな変更ごとにコミットしないでください - すべての行が変更された、すべてのファイルが変更されたなど。
  • 丸一日働くのではなく、1 日の終わりに 1 つの巨大なコミットを行います。
  • 異なる機能のコミットを分離してください - 例えば、機能 foo の開発とバグ #2 の修正。
  • Git がこの方法で追跡しやすいため、ファイルの移動/名前変更に対して別のコミットを行います。
  • 元に戻せるように最適化することを検討してください: 行った変更が気に入らない場合、新しい変更が重ねられた後でも簡単に元に戻すことができますか?
于 2011-09-15T04:08:57.033 に答える
11

「わかりやすい」とは、次のことも意味します。

  • 「チェックポイント」だけでなく (ファイルを変更するたびにコミットした場合のように) コミットするだけでなく、コードの一貫した状態を表すコミット
  • 簡単です(つまり、各コミットはタスクgit bisectの変更を表す必要があり、進化または新機能をコンパイルして追加します。「チェックポイントコミット」では、失敗が早すぎます)git bisect

詳細については、「 Git ワークフローを理解する」を参照してください。区別する必要があります。

  • 基本的にいつでもコミットできるプライベート ブランチ (決してプッシュしない)。
  • パブリック ブランチ (GitHub にプッシュします)。クリーンアップして意味のあるコミットを行う必要があります。

したがって、Git がデフォルトで使用する「早送り」マージに注意してください。その方法でパブリック ブランチにマージしようとしているブランチの履歴をクリーンアップすることを忘れないでください。

于 2011-09-15T04:11:23.947 に答える