最終更新: 2021-05-12T04:21+0900
あまり書かれていないことだけ。
git remote
git remote
git remote set-url --push <remote> ""
git config --global --add branch.autoSetupMerge false
--no-track
を既定値にするということ。git branch
のみならず git checkout -b
においても。--ff-only
なマージで済むはず。でもマージする範囲が自動ではわからないかも。なら毎回新しくチェックアウトするとか。git push [-u] <myRemote> localBranch[:remoteBranch]
localBranch
の部分を HEAD
にするとチェックアウト中のブランチ名を意味するみたい。※コミットオブジェクトへの参照(refs)ではなく、refs への参照ってこと?:
)はローカルとリモートにおける全ての同名のブランチの組を指すらしい。ローカルにだけ短い名前を付けると対象から外れてしまうし、それがリモートに存在する無関係のブランチと同じ名前だったりしたら……(考えるだに恐ろしい)。git checkout --detach
してから。これでひとつのブランチも残しておかなくて済む。[Tips] おそらく一番タイプするコマンドのエイリアス。
[alias] co = checkout st = status --short --branch
git reset
, git push
git push <remote> --delete <remoteBranch>
(--delete
の代わりにコロンでも同じ。:<remoteBranch>
空のブランチを push = 削除)git fetch --all
して <remote>/master
などと参照すればよい。すべては自分のリポジトリを表示したときに、他人の作業の成果があたかも自分のものであるかのように表示されるのが嫌だから。あとは一見したページの印象がそっくりだと、自分のリポジトリを削除するつもりでフォーク元のリポジトリを削除してしまうことがあるから。
自分にとって3つのリポジトリの関係は「本家―ローカル―フォーク」として捉えられている。でもひょっとしたら「本家―フォーク―ローカル」の想定もあるのかもな、と考えてみた次第。でも自分で GitHub にフォークリポジトリを持たなくても「本家―ローカル(フォーク)」の2者間でもフォークは成り立つので、中心に GitHub 上のフォークリポジトリを置くのは、GitHub の中の人の立場としてならともかく、個人としては順序が違うと思う。メンタルモデルはひとつで十分だ。そのとき GitHub 上のフォークリポジトリは3番目に位置するオプショナルな存在となる。