- ベストアンサー
gitの開発のすすめ方について
git clone -url- で、ローカルにリポジトリを作るまではいいのですが、 そのリポジトリで作業するべきでしょうか? それとも、さらにローカルにブランチを作って作業するべきでしょうか? 細かな変更までログに残って煩わしくなってしまわないか心配しています。 subversionは使ってましたが、 gitは初心者です。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
gitそのものになれないうちにrebaseはやめておけ。 mergeを素直に使った方がいい。 >細かな変更までログに残って煩わしくなってしまわないか心配しています。 mergeするときに--squashオプションをつけてコミットを一つにまとめる。 masterはリリースされたソーズかあるように自分はしている。 開発は開発ブランチで作業。
その他の回答 (2)
- MillenniuM
- ベストアンサー率58% (42/72)
ローカルの開発は、upstream と独立と考えると、 local というブランチを持つとして、 git branch local git checkout local [ この local ブランチに対して色々コミット ] upstream の変更を取り込むには、 [ local ブランチを綺麗にする ] git clean -fqdx git checkout master git pull git checkout local git rebase master で、local に、master の変更を取り込むことが可能です。 ただ、衝突することもありえます。
お礼
回答ありがとうございます。 私がやろうと思っていることがまさにこれでして、 これが作業的に効率が良いか、一般的な手法かどうかが知りたかったのでした。 プロジェクトによるのだろうとは思いますが、 こちらのほうが、merge前の状態もすぐにテストできるメリットがあるのかなと。
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
commitしなければログは残りません。 言い換えれば、commitしたタイミングのものでなければバージョンを戻したり進めたりは出来ません。 コンパイル(デバッグ)完了してからcommitするのであれば、メインブランチをそのまま開発用に使えば良いと思います。 開発ブランチで作業をして、デバッグが完了したらメインブランチに取り込む方が良いという話もありますが、 その方法の必要があるのは、commitをトリガーにしてコンパイル(デバッグ)している人だけだと思います。
お礼
回答ありがとうございます。 ローカルといえどさすがにビルドも通らない状態ではcommitしませんが、 ブランチを切って作業するのはやはり二度手間になりますかね。 なんかまだbranchをうまく使う方法がイメージできないです。
お礼
回答ありがとうございます。 なるほど、mergeの時にコミットをまとめるオプションがあるのですね。 rebaseはまだちょっと怖いので、 まずはmergeをしっかり使えるようにします。