git checkout -t でちょっと幸せになれる

0pt   2018-11-08 13:31
IT技術情報局

概要

みなさまは git checkout -t を使ったことはありますか?これを使うと既存のリモートブランチをローカルに作成する作業が少し楽になります。

以下の3つのコマンドは全て同じ結果になります。リモートブランチから新しいブランチをローカルに生成し、さらにそのブランチへ移動する という動作をさせるコマンドです。

branch + checkout

最初に覚えたのはこれです。

git branch proj/exampleWorks origin/proj/exampleWorks git checkout proj/exampleWorks checkout -b

次に「それコマンド1回で済むよ」と教えてもらったのがこれです。

git checkout -b proj/exampleWorks origin/proj/exampleWorks checkout -t

そして今回紹介するコマンドです。さらにタイプ量が少なくなりました。

git checkout -t origin/proj/exampleWorks

解説

If no -b option is given, the name of the new branch will be derived from the remote-tracking branch, by looking at the local part of the refspec configured for the corresponding remote, and then stripping the initial part up to the “*”. This would tell us to use “hack” as the local branch when branching off of “origin/hack” (or “remotes/origin/hack”, or even “refs/remotes/origin/hack”). If the given name has no slash, or the above guessing results in an empty name, the guessing is aborted. You can explicitly give a name with -b in such a case.

-t オプションは対象のリモートリポジトリとブランチを指定するオプションです。そして、-b オプションは実は省略が可能です。 -b オプションを省略すると、ローカルに作成されるブランチ名はリモートリポジトリのブランチの名前がそのまま使われます。

これを利用して リモートブランチから新しいブランチをローカルに生成し、さらにそのブランチへ移動するという動作をより少ないタイプ量でサクッと行うことができます。-b オプションの省略分だけタイプ量を減らすことができるわけですね。

最後に

知らなくてもたいして困ることはないですが、知っているとほんのすこしブランチ作成が楽になります。もしご存知なかったかたはぜひ試してみてください。

参考

Source: gitタグが付けられた新着投稿

   ITアンテナトップページへ
情報処理/ITの話題が沢山。