Gitの複雑な使い方いろいろ

Gitがいろいろ複雑になってきたら、とりあえずは昔ながら風にバックアップ取りましょう。これ確実です。それからいろいろやって慣れてくると便利になります。

リモートのブランチで上書き

開発のスピードがあがると自分が書いたものがリモートに追いつかないことがあって一日中マージして終わりみたいなことになったりします。そういうときは自分の開発したものをいったん退避させて(物理的にバックアップして)リモートリポジトリの最新にしてから自分でマージした方がスムーズ。

まずはリモートの内容をひっぱってきます。

git fetch origin BRANCH_NAME

あらかじめコンフリクトしそうなファイルを確認する場合は、diff取りましょう。全部みたい場合は–name-onlyオプションはいらないです。(が、かなり見づらいです)
内容的にはfetchしてきたもののHEADと自分のローカルリポジトリのHEADを比べてみるというものです。

git diff --name-only FETCH_HEAD HEAD

問題なければ、リモートリポジトリでローカルを上書きします。

git reset --hard FETCH_HEAD
Last update: 2017.09.06 (水)