githubを眺めていて自分のbranch(mybranch1)上で開発している間にmaster上でも共通のファイルが変更されているのを発見してしまった場合の対応。
もしローカルのmasterが最新でなければ以下のコマンドで更新
git branch master
git pull origin master

最新のmasterを自分のブランチに取り込む
git checkout mybranch1
git merge master

mergeされたcommit記録を確認
git log -p filename1
取り込んだ変更をリモートへpush
git push origin mybranch1

リモートに開発用branchがもう一つある場合(mybranch2)
git branch -a
でbranchの確認。
ローカルにリモートのmybranch2が無い場合はgit fetchで取得

そのリモートにあるgitブランチをローカルにcheckout
git checkout -b mybranch2 origin/mybranch2
その後はmybranch1と同様の作業をする。

一方master側へ同じファイルのみ変更をpushしたい場合(例えばREADME.mdの変更など)、cherry pickというコマンドを使う。

masterブランチになる
git checkout master
git cherry-pick
git push origin master


Categories: Tools

Related Posts

Tools

Mac initial setup memo

1 Chrome & Firefox install 2 Install Xcode & command line tool install Xcode -> Xcodeを入手 xcode-select --install license agreement sudo xcodebuild -license install command line tool (gitなどが入る) xcode-select --install 3 PackagingツールHomebrewのインストール ruby -e "$(curl Read more...

Tools

git pushを間違えないために

gitを使い始めた頃に”git push origin branch名“というコマンドでいつかミスが起きるだろうなーと思い続けていました。”origin master“とか、いつか無意識に間違ってタイプしちゃうんだろうなぁと。かといって、コマンドに慣れてしまうと、SourceTree等のGUIツールを常に使うのも少々面倒。 そこで、ようやくコマンドで間違えないpushの方法を見つけました。 それは常に”git push“を使うこと。よくgitの解説等には、push先を間違えないように”git push origin branch名“と明示しましょうなんて記事がありますが、それとは逆をいきます。 以下、詳細。

Tools

sublime text 3にflatlandのthemeを当ててみた

タイトルの通り、ST3にテーマを適用してみたのでメモ。