お世話になります。
最近、Gitでバージョン管理をするようになったのですが、コミットするのを忘れてしまい、数時間をいっぺんにコミットしたり、戻したくなっても直近のバージョンが存在しないなんてことが起こってきました。
みなさんが普段、細かくコミットするために心がけていることなどありましたらぜひ教えていただきたいです。
よろしくおねがいします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
Git初心者です。
おっしゃっていること、よくわかります。
複数のファイルを更新した場合は、全部のファイルをコミットせずに、処理の区切りごとに対象ファイルを選んでコミットしていました・・・。それぐらいしか思いつかないですね。
Git以外であれば、最近Redmineを導入して開発のタスクをチケットで管理するように変更しましたが、チケットベースで機能の追加・修正を行うので、Gitのコミット忘れは無くなったと思います。
Redmineを使っていないのであれば、一つの改善策として使えるかもしれません。
投稿2016/12/03 13:42
総合スコア179
0
ベストアンサー
※前提として、「作ったものがほぼ確実に動くmaster ブランチ」、「開発途中で動かないことがままあるかもしれないdevelop ブランチ」の2本柱で開発を進めています(git flow を参考にしています)
- 作る機能を選び出して、そのためのブランチを切る
- 機能をある程度一気に作る
git add -p
で部分的にステージング、コミットする
と、大まかな手順としてはこのようにしています
どんな機能を作るか決めておけば、「どんなメソッドを追加・変更する必要があるだろうか」「新しく追加・削除すべきファイルはどれだろうか」といったことが決めやすくなるので、多少コミットするのを忘れてしまっても、エディタで、追加したくない部分を一旦削除してコミット、そのあとでUndo といったこともできます
ブランチを切っているので、もし「やっぱり全部なかったことにしたい」となっても、当該ブランチを削除すれば済みます
以上CUI クライアントでの作業内容ですが、何か参考になれば幸いです
Link
投稿2016/12/04 23:22
編集2016/12/04 23:27総合スコア2321
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
わたしも上の方と同様に、変更箇所を選択してそこだけステージ→コミットを複数回繰り返す と言う形で対応していました。
自分は普段GitExtensionsというツールを使ってGitを使っていますのでGitコマンド自体の使い方はわかりませんが、GitExtensionsでは、コミットするときに指定のファイルだけ・ファイル内の指定行だけをステージ(コミット待ち状態)にすることが出来ます。
これを使うことで、一度に複数箇所の変更を行った場合でも、変更箇所をひとつひとつ指定してコミットすることができます。
あとは、なるべくGitExtensionsを起動しやすくすることで、コミットが簡単にできるようにするくらいでしょうか(自分はパスの通ったフォルダにgite.batというGitExtensionsを起動するためだけのバッチファイルを置き、それをVisual Studio Codeなどから呼べるようにすることでコミットの簡略化を行っています)
細かくコミットすることはベストではあるのですが、やはりコミット間隔を成るべく短くしようとすると、今度はGitクライアントとの画面移動によって作業効率が落ちてしまいかねません。
自分なりに ということにはなってしまいますが、自分なりのコミットの仕方をきめてやる必要があるかと思います。
投稿2016/12/03 13:52
総合スコア59
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/05 05:57
2016/12/05 15:02