More Related Content
PPTX
PDF
分散トレーシング技術について(Open tracingやjaeger) PDF
PDF
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」 PDF
PDF
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー PDF
新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか? PDF
Dockerfileを改善するためのBest Practice 2019年版 What's hot
PDF
Mercari JPのモノリスサービスをKubernetesに移行した話 PHP Conference 2022 9/24 PDF
PPTX
PPTX
PDF
PDF
PDF
PPTX
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例 PPTX
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料) PDF
Unity開発で使える設計の話+Zenjectの紹介 PDF
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~ PDF
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは PDF
PDF
PPTX
今こそ知りたいSpring Web(Spring Fest 2020講演資料) PPTX
PDF
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで PDF
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発 PDF
PDF
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~ Viewers also liked
PDF
PDF
わしわし的おすすめ .gitconfig 設定 (と見せかけて実はみんなのおすすめ .gitconfig 設定を教えてもらう魂胆) #広島Git 勉強会 PDF
PDF
Tokyo.R #22 Association Rules PDF
コードを書きやすくしてくれる Xcode の基本機能 #NSStudy #devsap PDF
schoo x CONCENT「優れたUXを実現するための人間中心デザインとは?」 PDF
強化学習による 「Montezuma's Revenge」への挑戦 PDF
DRL challenge on Montezuma's Revenge PPTX
機械学習ライブラリ「Spark MLlib」で作る アニメレコメンドシステム PDF
PDF
KEY
PDF
PPTX
Docker1.13で変わったことをわからないなりにまとめてみた PDF
PDF
PDF
PDF
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜 PDF
PDF
Spring Bootハンズオン ~Spring Bootで作る マイクロサービスアーキテクチャ! #jjug_ccc #ccc_r53 Similar to 5分で分かるgitのrefspec
PDF
PDF
PDF
PPTX
PDF
PPTX
PPTX
PDF
Gitを理解するためにおさえておきたい3つの図(工事中) PDF
KEY
PDF
PDF
Git & ブランチモデルで学ぶ バージョン管理入門 PPTX
PDF
GitHubの機能を活用したGitHub Flowによる開発の進め方 PDF
KEY
PPT
PDF
PDF
PDF
5分で分かるgitのrefspec
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
指定による挙動の違い
6
git fetch origin…
無指定
普通にcloneした場合、.git/configのremote.origin.fetchに
+refs/heads/*:refs/remotes/origin/*
というデフォルト値(*はワイルドカード)が設定されており、
これを指定したことになる。
つまりリモートリポジトリの全ローカルブランチを
ローカルの同名リモート追跡ブランチにそれぞれfetchする。
<以降、このデフォルト値は弄っていない前提で記述>
<ref> <ref>: と同じ。
<src>:
remote.origin.fetchの設定で対応する<dst>が決まる。
(デフォルト値なら同名のリモート追跡ブランチが<dst>)
対応する設定がない場合でもFETCH_HEADは更新される。
<src>:<dst>
<src>を<dst>にfetchする。
<dst>をリモート追跡ブランチにしたい場合は
hoge:refs/remotes/origin/hoge のように指定する。
- 21.
7
git pull origin…
無指定
fetch :git fetchと同じデフォルト値が使われる。
merge:カレントブランチが追跡ブランチであれば
.git/configのbranch.<name>.mergeに設定があるはず。
そこからカレントブランチに対して行われる。
(普通はリモートリポジトリの同名ブランチになっている)
<ref> <ref>: と同じ。
<src>:
fetch :git fetchの場合と同じ。
merge:<src>がカレントブランチにmergeされる。
refspecを複数指定した場合、
全<src>がカレントブランチにmergeされることに注意。
<src>:<dst>
fetch :git fetchの場合と同じ。
merge:同上。複数指定時も含め<dst>の指定は無関係。
指定による挙動の違い
- 22.
8
git push origin…
無指定
remote.origin.push の設定値が使われる。無ければ
push.default の設定(≠refspec)に応じた挙動となる。
push.default が明示的に設定されていない場合、
2.0以降だと「simple」が使われる。
いくつか種類があるため要理解。(ものによっては事故る)
<ref> <ref>:<ref>と同じ
: push.default = matching を指定した場合と同じ。
:<dst>
空の<src>を<dst>にpush、つまり
リモートリポジトリの<dst>ブランチを削除する。
<dst>に対するリモート追跡ブランチも消してくれる。
試した限りremote.origin.fetchの設定を見てるっぽい。
<src>:<dst>
ローカルの<src>をリモートリポジトリの<dst>にpush。
<dst>に対するリモート追跡ブランチにも反映(作られる)。
こちらも試した限り、remote.origin.fetchの設定を見て
リモート追跡ブランチだと判定しているっぽい。
指定による挙動の違い
- 23.
- 24.
- 25.