この広告は30日以上更新がないブログに表示されております。
新規記事の投稿を行うことで、非表示にすることが可能です。
2017年12月14日
GIT体験記 branchの差分
リモートのprod_branch とローカルにあるdevelop_branchを比較
git diff origin/prod_branch develop_branch
情報が多すぎてみにくい。
ファイル名だけ表示するには
git diff --name-only origin/prod_branch develop_branch
さらに結果をファイル出力するには
git diff --name-only origin/prod_branch develop_branch > c:/temp/diff_file.txt
git diff origin/prod_branch develop_branch
情報が多すぎてみにくい。
ファイル名だけ表示するには
git diff --name-only origin/prod_branch develop_branch
さらに結果をファイル出力するには
git diff --name-only origin/prod_branch develop_branch > c:/temp/diff_file.txt
2017年12月13日
GIT体験記 PUSHエラーに気付かない
いつもPUSHが終わった後にエラーメッセージが出る。
PUSH失敗かと思うのだが、PUSH先ではファイルが更新されている。
これに慣れきってしまい、いつもと違うエラーメッセージが表示されても気付かなった。
PUSHされていないのにPUSHされていると信じて、
動作確認を行い、動作が変な箇所の原因を何時間も調べていた。
エラーメッセージを記録しておらず、ここに記載することもできないのは、
情けない限り。
システムが回復するまで待ってくれた方、ありがとうございました。
このミスを繰り返さないよう、対策を考えないといけない。
PUSH失敗かと思うのだが、PUSH先ではファイルが更新されている。
これに慣れきってしまい、いつもと違うエラーメッセージが表示されても気付かなった。
PUSHされていないのにPUSHされていると信じて、
動作確認を行い、動作が変な箇所の原因を何時間も調べていた。
エラーメッセージを記録しておらず、ここに記載することもできないのは、
情けない限り。
システムが回復するまで待ってくれた方、ありがとうございました。
このミスを繰り返さないよう、対策を考えないといけない。
2017年11月20日
Git体験記 チェリーピック
チェリーピックは何度か失敗してきたが、今回は問題なく実行できた。
ブランチ名と処理名がマージの依頼指示の中にあった。
チェリーピックで対応できると判断できた。これで落ち着くことができた。
?@ローカル側にあるdevelopブランチを最新状態にする。
?Amasterをfetchする。
?Bfeatureブランチを作成する。
?Cチェリーピックを行う。
対象となるコミットが複数あったので古いものから実施
?Dローカル環境でテストする。
?Efeatureブランチをdevelopにマージする。
?FdevelopをサーバにPUSHする。
?Cで幸運が重なった。
・対象コミットの親が1つなのか、Source Treeだけでチェリーピックを完了できた。
Gitシェルでの操作(git cherry-pick -m コミットID)なしで済んだ。
・コンフリクトが発生しなかった。
・対象ブランチをわざわざローカル側にダウンロードしなくても、
リモート側から必要なソースを取得できることに気付いた。
お陰で今日はボロが出なかった。
それだけのこと。
Git学習は続く!
-後日談-
次の機会では?Cで親が複数のCommitが対象となり -m の入力を
求められた。1なのか2なのか、自力では判断できなかった。
これまでは ずっと 1 を指定している。2を指定したことはまだない。
ブランチ名と処理名がマージの依頼指示の中にあった。
チェリーピックで対応できると判断できた。これで落ち着くことができた。
?@ローカル側にあるdevelopブランチを最新状態にする。
?Amasterをfetchする。
?Bfeatureブランチを作成する。
?Cチェリーピックを行う。
対象となるコミットが複数あったので古いものから実施
?Dローカル環境でテストする。
?Efeatureブランチをdevelopにマージする。
?FdevelopをサーバにPUSHする。
?Cで幸運が重なった。
・対象コミットの親が1つなのか、Source Treeだけでチェリーピックを完了できた。
Gitシェルでの操作(git cherry-pick -m コミットID)なしで済んだ。
・コンフリクトが発生しなかった。
・対象ブランチをわざわざローカル側にダウンロードしなくても、
リモート側から必要なソースを取得できることに気付いた。
お陰で今日はボロが出なかった。
それだけのこと。
Git学習は続く!
-後日談-
次の機会では?Cで親が複数のCommitが対象となり -m の入力を
求められた。1なのか2なのか、自力では判断できなかった。
これまでは ずっと 1 を指定している。2を指定したことはまだない。
2017年11月12日
Git体験記 コミットのコメントを修正する
コミット時に指定したコメントが不適切なことに後から気付いた。
(git commit -m "xxxxxxx" のxxxxxxx部分ですが、コミットメッセージとも呼ぶようです。)
Webで検索し、git commit --amend を試すと、
エディタが起動されて驚いた。
コメント部分を修正して保存し、git log を実行すると
確かにコメントが修正されていたので、ホッと安心。
別の方法
git commit --amend -m "新しいコメント"
エディタは起動されなかったが、これでも修正できた。
(git commit -m "xxxxxxx" のxxxxxxx部分ですが、コミットメッセージとも呼ぶようです。)
Webで検索し、git commit --amend を試すと、
エディタが起動されて驚いた。
コメント部分を修正して保存し、git log を実行すると
確かにコメントが修正されていたので、ホッと安心。
別の方法
git commit --amend -m "新しいコメント"
エディタは起動されなかったが、これでも修正できた。
2017年11月09日
Git体験記 コンフリクトを解消する
マージしてコンフリクトが起きたとき、Source Treeではメニュー操作で解決できる。
ときどき、操作を誤ってコンフリクト解消用のメニューが表示されないことがある。
こうなるとパニックである。
先日、チェリーピック中にこの状態になってしまった。
以下の手順で何とか解決できた。
?@git statusコマンドでコンフリクトしているファイルを確認
$git status
Unmerged paths: .......
・
Unmerged pathsの後ろにファイル名が表示される。
?Aエディタでソースを確認
コンフリクトした箇所に以下のコードが埋め込まれているので
適宜修正して保存する。
<<<<<<< HEAD
=======
>>>>>>> [commit id]
?Bgit add [コンフリクトしたファイル]
?Cgit commit -m 'コメント'
?Bと?CはSource treeから行った。
コンフリクト解消の最大のポイントは
落ち着くこと
ときどき、操作を誤ってコンフリクト解消用のメニューが表示されないことがある。
こうなるとパニックである。
先日、チェリーピック中にこの状態になってしまった。
以下の手順で何とか解決できた。
?@git statusコマンドでコンフリクトしているファイルを確認
$git status
Unmerged paths: .......
・
Unmerged pathsの後ろにファイル名が表示される。
?Aエディタでソースを確認
コンフリクトした箇所に以下のコードが埋め込まれているので
適宜修正して保存する。
<<<<<<< HEAD
=======
>>>>>>> [commit id]
?Bgit add [コンフリクトしたファイル]
?Cgit commit -m 'コメント'
?Bと?CはSource treeから行った。
コンフリクト解消の最大のポイントは
落ち着くこと