昨日からBitbucketを使い始めたのですが、バージョン管理の仕方でわからないところがあります。
gitを使う理由としては、
file0-0.txt
file0-1.txt
file0-2.txt
...
みたいなことをしなくていい、というところにあると思うのですが、
ソースコードをガラっと変える場合(バグ修正ではなく、構成から変える場合)はどうしたらいいのでしょうか?
通常通りのgit add→git commit→git pushでいいのでしょうか。
皆さんがどうやって使っているか教えていただきたいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
ソースコードをガラっと変える場合(バグ修正ではなく、構成から変える場合)はどうしたらいいのでしょうか?
通常通りのgit add→git commit→git pushでいいのでしょうか。
構いません。
リリースして動作するシステムやアプリケーションは1個だけですよね?
つまり、最新の私が最強なのです。
一応全ての履歴は持っているので、その気になれば何時でも特定コミットの状態にプロジェクトの構成ファイルをロールバック出来ます。
皆さんがどうやって使っているか教えていただきたいです。
とは言うもののいきなり構成をガラリと変えるのは怖いものです。
もちろん私も同感です。
こういう時の対応は色々ありますが、私だったら新しいブランチを作成して対応します。
Gitでは好きなタイミングでコミット履歴を枝分かれさせるようにブランチを作成し、
いい感じに動く様になったら好きなブランチへ合流することが可能です。
Gitでは本番環境ですぐに動作する、何時でもリリース出来る状態のものをmasterというブランチ名で管理する慣習があります。
普段、エンジニア達はdevelopmentというブランチを作成し、そこにコミット履歴を重ねていきます。
リリースする直前でdevelopmentブランチのファイル一式をテスト、これでリリースしても大丈夫!となったら、masterブランチへ合流(マージ)させてリリースという流れになります。
チャレンジングな事をして既存の構成を崩したら動かなくなるかもしれない…
でも開発成功すれば超かっこいいクールなプロジェクトになるかもしれない…
こんな時は更に新しいブランチを作って、開発がポシャればブランチを捨てれば良いですし、
開発が成功すればdevelopmentに合流させれば良いのです。
まぁ、developmentを用意せずにmasterブランチに直接ぶち込む簡易的な開発手法もあるようですが…
とりあえず私と一緒にブランチを作成してみましょうか。
ブランチの作成/削除
Bash
1# 現在のブランチリストを確認する 2$ git branch 3* master 4 5# ブランチを作成する (現在のブランチと同じコミット履歴を用いて複製します) 6$ git branch development 7 8# developmentが作成された事を確認(今居るブランチは*マークでわかります) 9$ git branch 10* master 11 development 12 13# developmentブランチを削除 14# (コミット履歴が進んでいるブランチは-dでは削除出来ません、-Dが強制削除になります) 15$ git branch -d development 16Deleted branch development (was 0000000). 17 18$ git branch 19* master
ブランチの切り替え
Bash
1$ git branch 2* master 3 development 4 5# ブランチの切り替えにはcheckoutコマンドを利用する 6$ git checkout development 7Switched to branch 'development' 8 9$ git branch 10 master 11* development 12 13# 注意、編集中のファイルがあるとブランチ切り替えが失敗する可能性があります 14$ git checkout master 15Switched to branch 'master' 16 17$ git branch 18* master 19 development
開発が終了してdevelopment→masterに合流する
Bash
1$ git branch 2 master 3* development 4 5$ git checkout master 6Switched to branch 'master' 7 8$ git merge development 9 10# マージが成功したことを確認 (マージ失敗した場合はこういう表示にならない) 11$ git status 12On branch master 13Your branch is up to date with 'origin/master'. 14 15nothing to commit, working tree clean 16 17# 不要になったdevelopmentを削除(既にmasterに取り込まれているので-dでdevelopmentを削除できる) 18$ git branch -d development
投稿2018/02/21 05:30
総合スコア21158
0
ソースコードをガラっと変える場合(バグ修正ではなく、構成から変える場合)はどうしたらいいのでしょうか?
通常通りのgit add→git commit→git pushでいいのでしょうか。
はい、それで何も問題ありません。そもそも、Gitはその時点でのファイルのスナップショットをコミットごとに保存するようになっていて、「ファイル単位の変更」というのは表示時に推定しているだけです。
投稿2018/02/21 05:19
総合スコア145184
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/21 05:42
2018/02/21 05:59
2018/02/21 07:23