skillup

技術ブログ

Git

git別リポジトリからの差分取りこみ、リモートの別ブランチ反映、強引なstash

投稿日:2019年2月10日 更新日:

gitについて最近覚えたことなど

別リポジトリからの差分取り込み

もともと似てるソースが別リポジトリになってしまった・・・んで差分取り込みたい、なんて時に別リポジトリからの取り込みが可能なようです。

おそらくですが、リポジトリがoriginのものと別のものを作成するということらしいです。

が、うまくいかない時もあります。うまくできない時には一度checkoutしてそのソースにうつってみたりするとOKなこともあります(要調査)。

参考リンク

異なるgitリポジトリ間でもcherry-pickはできる

別ブランチからファイルのみ取り込み

ちなみに別ブランチからファイルを取り込みたい場合は、下記のようなコマンドで。

追跡ブランチをローカルに取り込みたいとき

実務では追跡ブランチからの取り込みというケースが結構あります。

追跡ブランチからローカルブランチを作る方法~ (svn→gitの移行など)

例えば中央リポジトリではもともと

  • master
  • dev

というブランチがあったとして、誰かがdev2というブランチを作成しました。

この時、自分のPCにdev2を取り込みたい!って時ですが、今まではdevからブランチを作って取り込んでいました。この場合、dev2の作成ルートがdevと関係なかった場合、おかしなことになります。

が、上記のようなやり取りをせずともリモートの追跡ブランチを作成することはできるようで、

とやれば普通に追跡ブランチを作成できました。この後普通に下記のように追跡ブランチからの取り込みをすればOKです。

早く知っておくべきだった・・・

強引なgit stash

一時的な保存としてgit stashを使うと思うのですが、うまくいかず、下記のようなメッセージが出てしまうこともあります。

Cannot apply to a dirty working tree, please stage your changes

この場合、差分自体は見れるので、

とやると差分がうまく取り込めます。

 

-Git
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

git stash ~一時的な内容の保存~

gitでコミットせずに、作業を保存したいときがあるとおもいます。 例えばあるブランチで作業していて、実は今の作業内容が別のブランチでの反映が必要になったときなどです。 gitはブランチの切り替え(gi …

no image

gulpに関して

gulpに関しての復習と色々と間違っていたところもあるのでまとめ。 ちなみに以前書いた記事は下記 gulpインストールとタスクの実行 Contents1 インストール2 タスクの実行3 npxコマンド …

no image

Gitのブランチについて

ちょっといろいろと触っているGitに関して。 前回は作業ディレクトリ、インデックス、コミットについて説明したのですが、今回はブランチについて行います。 Contents1 ブランチとは?2 ブランチに …

no image

追跡ブランチからローカルブランチを作る方法~ (svn→gitの移行など)

SVNで運用されていたプロジェクトをgitに移行する機会があったのでその時のメモなどを。 思ってたよりは楽だったかな・・・ Contents1 準備2 実際の移行(git svn clone)3 gi …

no image

Gitについて基本頻出系

Gitでよく使うコマンドのまとめなんぞを。 Contents1 リポジトリ作成&基本設定2 リポジトリ取り込み系3 インデックス登録→コミット→リモート登録→プッシュ4 変更戻し系(基本的に中 …