[過去ログ] Git 15©2ch.net (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
10(1): (ワッチョイ) 2017/02/08(水)11:32 ID:glAhqeU30(1/2) AAS
何かそういう、ブランチを整理するときのワークフローで分かりやすいドキュメントってないですか?
いつもいろんなgit操作を試行錯誤してしまって、本題がコミットすることからブランチ整理することにずれていってしまうので。
11(1): (ワッチョイ) 2017/02/08(水)11:38 ID:AT2+3Uwc0(1) AAS
>>8
なるほどと思ったが
cherry-pickは操作後の動作が保証できない
mergeなら操作後の動作が保証できる。完全ではないがcherry-pickよりまし
なのでmergeのほうが優れている
12(1): (ワッチョイ) 2017/02/08(水)15:36 ID:fGXhImwi0(1) AAS
>>10
masterブランチにcommitしまくるからそうなる
最初に開発ブランチ作れ
13(1): (ワッチョイ) 2017/02/08(水)17:10 ID:glAhqeU30(2/2) AAS
>>12
あっ、そういうのはいいんで、rebaseを含めブランチの履歴を整理する分かりやすいワークフローがあったら教えて下さい
14: (ワッチョイ) 2017/02/08(水)19:40 ID:Z548kjM+0(1) AAS
最強の整理整頓術はそもそもモノを増やさないことだってのは全く間違ってないと思う
ブランチ整理って何がしたいのか分からんけど、successful git branching modelでも参考にしたらええんちゃうの
15: (ワッチョイ) 2017/02/08(水)22:22 ID:EqksEKaR0(2/3) AAS
>>11
> cherry-pickは操作後の動作が保証できない
何を言ってるんだ?
cherry-pickはあるコミットを持ってくるというだけの機能で
cherry-pickしたあとの動作なんて最初から何も保証してないんだが
保証できないんじゃなくて、保証してない
だからrebaseして、そのcherry-pickしたコミットが正しく動くようにするんだよ
ちなみに、そもそもなんでcherry-pickして動かなくなるのかといえば
こまめなrebaseをしてないから。例えばコミットに対する修正を別コミットに
していたりするとそうなる。こまめにrebaseして意味のある単位にコミットを
修正していれば他人が読んだときのレビューも楽になるし、再利用もしやすくなる
> mergeなら操作後の動作が保証できる
mergeはブランチ全てをマージするものであってそもそも使うべきところが違う。
ブランチの中の1コミットだけを抜き取りたいときにmergeではできない
(できないからmergeの方が劣ってるとでも?w)
使い方が違うだけの話でどちらかが優れているとか劣っているとかいう話じゃない
16: (ワッチョイ) 2017/02/08(水)22:48 ID:EqksEKaR0(3/3) AAS
>>13
> あっ、そういうのはいいんで、rebaseを含めブランチの履歴を整理する分かりやすいワークフローがあったら教えて下さい
簡単に言えば、こまめなコミット、こまめなrebaseだよ
有名なオープンソースソフト(例git)のコミットログを眺めてみればいい
あれが目標とすべきコミット
眺めてみればいいといったが、コミットログっていうのは読むものなんだよ。
後から読むこともあるしレビューのときに読むこともある。だから可読性が必要
じゃあコミットの可読性はどうやればあげられるかというと
意味がある単位で小さくまとまめること
例えば試行錯誤した形跡を表しているようなコミットを持ってこられたって
ここバグってる?すぐあとのコミットで修正されてるやーんとなって時間を無駄に費やするだけ
かと言って複数のコミットを全部まとめてしまったら量が多くなりすぎる
では意味がある単位で小さくまとめる(=ワークフロー)にはどうするかとうと
まず開発中は小さくコミットしていく。大きな単位でコミットしてしまうと後で分けるのが大変になるから。
そして開発中はこまめにrebaseする。他の人にとって知りたいのは結果であって過程じゃない。
プルリク出すときには、最初から間違いなく作業しましたよっていう状態にして置かなければいけない。
rebaseが下手な人はコミットも大きくなって、いろんな修正を混ぜてしまう。
そういうことをするからrebaseするとコンフリクトまで起きてしまう。
コミットを小さくしていれば驚くほど簡単にrebaseができてしまう。
だからこまめなrebaseも苦にならない
17: (ワッチョイ) 2017/02/08(水)23:13 ID:I20sKjnm0(1) AAS
最初から意味がある単位で小さくまとめるのが理想だけど、
後からブランチの履歴を整理する手段も色々ある。
gitでアレを元に戻す108の方法
外部リンク[html]:labs.timedia.co.jp
Gitでやらかした時に使える19個の奥義
外部リンク:qiita.com
18: (アウアウカー) 2017/02/09(木)08:27 ID:ClsEJCvia(1) AAS
git(hub)-flow
19(1): (エーイモ) 2017/02/13(月)10:17 ID:Ql0/GOXFE(1) AAS
git mvしないでmvしちゃったんですけどgit addしたらrename扱いになってました
絶対にgit mvしなくてもgit画面どう見てくれるから問題ないってことですか?
20: (ワッチョイ) 2017/02/13(月)10:39 ID:1h+Oz1MN0(1) AAS
>>19
中身を書き換える前ならわりと追ってくれる
どこまで追ってくれるか試すと楽しいぞ
21: (ワッチョイ) 2017/02/13(月)15:13 ID:UyeCKZqE0(1) AAS
改行コード変わるだけで別ファイルになるけどな
22(1): (ワッチョイ) 2017/02/17(金)09:56 ID:hEtwtvyY0(1) AAS
毎日仕事が終わったら、その日作ったソースコードを
gitサーバーにコミットして帰宅する俺。
23: (ワイモマー) 2017/02/18(土)01:13 ID:neEeF1u6M(1) AAS
コミットして帰ると次の日休んだ時にビルドが通らないと呼び出し喰らうパターンだな
24(1): (ワッチョイ) 2017/02/18(土)01:21 ID:YzcxuYMW0(1) AAS
>>22
プッシュじゃなくて?
25: (ワッチョイ) 2017/02/18(土)01:58 ID:SqGT/vv90(1) AAS
>>24
ごめん、プッシュね。
マネジャーの人が俺らの作業をチェックしたいらしくて、
毎日帰るときにみんなプッシュしてから帰宅する。
svn時代と変わらない。
26(2): (ササクッテロル) 2017/02/18(土)02:04 ID:odevQhO/p(1) AAS
細かくコミットしていくことを心掛けたいが、気付くとコミットを忘れて突っ走ってしまう
そんな馬鹿野郎におすすめのツールとか運用とかないですか
27: (ワッチョイ) 2017/02/18(土)03:06 ID:3dbLYC4l0(1) AAS
>>26
突っ走った後にgit add -p 使って複数のコミットを作る
28(1): (ワッチョイ) 2017/02/18(土)11:33 ID:YCJMYP7V0(1) AAS
>>26
一定時間ごとに自動でコミット、プッシュするスクリプトがあったと思う
29: (ワッチョイ) 2017/02/18(土)13:22 ID:y2nzrwVZ0(1) AAS
>>28
そんなことするぐらいなら、
一定時間ごとに「コミットしろよ」って通知出すほうが良いわなw
30: (ワッチョイ) 2017/02/19(日)22:56 ID:ae9YYSse0(1) AAS
cron 書けとしか言いようがない。
31(1): (ワッチョイ) 2017/02/22(水)00:19 ID:doFig/5A0(1) AAS
エディタに自動保存機能なけりゃ編集内容はメモリ上にしかないからどのみち死ぬ
32: (ワッチョイ) 2017/02/22(水)15:40 ID:7bpb3LbA0(1) AAS
>>31
数分おきにエディタに :wq! を送るスクリプトを作ろう
33: (JP) 2017/02/22(水)15:45 ID:T1tKwjPzH(1) AAS
意味のある区切りじゃない自動保存などゴミ
34: (アウアウカー) 2017/02/22(水)16:51 ID:QaRsR5LQa(1) AAS
そもそもコミットは成果毎に行うのであって細かくすればいいというものではない
35: (ワッチョイ) 2017/02/22(水)19:13 ID:nmnET67+0(1) AAS
プレーンテキストとかワープロとかならともかく、ソースコードだったらコンパイルするためにどんどん保存してるんだから自動保存ってそこまで必要性高いものでもなくない?
36: (ササクッテロラ) 2017/02/22(水)19:54 ID:OuXxGo6Bp(1) AAS
コミットと保存の話が混ざって混沌としてきてる
37(1): (アウアウカー) 2017/02/22(水)20:45 ID:bVHsZCW9a(1) AAS
個人開発なら単なる履歴残しに使ってもいいがチームの場合はそれじゃ困るんだよね
38: (ワッチョイ) 2017/02/23(木)01:11 ID:9wlFqT9C0(1) AAS
ショートカットキーctrl+Sで保存は便利でよく使う
履歴残し程度なら同様にショートカットキーで保存とコミットができるようにエディタにスクリプト組み込めばOK
初回ショートカットキーで一時作業用ブランチを切らせて
一通り終わったなら別のショートカットキーでsquashなりでまとめてからコミットメッセージ入力窓でも出してから本来の作業用ブランチにFFマージさせればおk
39(1): (ワッチョイ) 2017/02/23(木)10:00 ID:lHjqIPrz0(1) AAS
>>37
チームの場合はgitは個人で自由に使わせておいて
チーム側では集約にsvnを使うよね
上下前次1-新書関写板覧索設栞歴
あと 963 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.012s