skillup

技術ブログ

Git

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

投稿日:

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でのbranch 新ブランチの作成&リモート反映&別環境反映

gitを使っているとわけのわからないことは多いのですが(爆)、その中の1つがbranch(ブランチ)でしょう。 これも説明をきいてもわからないのですが、自分でそのケースを学習してみればすぐにわかると思 …

no image

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

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

no image

gulpに関して

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

no image

最新版のgitをソースから&git diffおさらい

Contents1 gitをソースから2 git diff gitをソースから gitはyumから入れてもいいんですが、バージョンが古かったりすると機能がいろいろと制限されるなどのデメリットもあります …

no image

gitのfetchに関して

gitでリモートの変更を取り込む場合、大きく分けるとfetchとpullがあります。 両者の違いですが、 fetch=一度、変更を取り込んで、ローカルの変更と相違点を確認できます。確認後mergeを行 …