工作好きな情報系の雑記

[Git]個人的な操作方法まとめ

gitをきちんと使い始めようと思って色々調べた。

いやーgithubわっかんねぇ
慣れるまでは時間がかかりそうだ

※随時更新

リモート関連

※originは適宜好きな名前に変更できる。origin以外の名前で登録した際は、それに合わせて各コマンドのoriginの部分を変更すること。

登録されているリモートリポジトリの確認

リモートリポジトリの登録

## 前提知識Gitは、分散レポジトリだから「どのレポジトリ」の「どのブランチ」かを指定しないとわからないよ!## origin と master- origin: レポジトリの場所(URL)の別名- maste...
すぐ分かる! git の origin と master ってなんだ? - Qiita - Qiita

リモートリポジトリの変更

githubのプライベートレポジトリを移行した時に行ったクライアントの設定。もしかしたらまた同じ機会があるかもしれないので備忘録として。## 前提- githubでのプライベートレポジトリ移行は完了済みレポジトリの移行その...
gitのremote urlを変更する(レポジトリ移行時) - Qiita - Qiita

リモートリポジトリの削除

登録されているリモートリポジトリの確認```git remote -v```リモートリポジトリURLの編集```git remote set-url [repository url...
リモートリポジトリの確認・編集・削除 - Qiita - Qiita

リモートブランチにpush

push元のローカルブランチ名とpush先のリモートブランチ名が同じときのみ、コロンを省略した書き方ができる。

id:koogawaさんのgitの記事を読みました。 これを読んでそういえばみんな知ってるのかなと思った点があるので書いておきます。 取り上げるのはgitのpush周りのお話です。 (これ以降の記事中のリモートは全てoriginとします。) このコロンは何?? リモートブランチの削除で以下のようなコマンドを実行すると思います。 git push origin :hoge コロンが付いていますがこのコロン正体、正しく説明できますか? 実用Git作者: Jon Loeliger,吉藤英明(監訳),本間雅洋,渡邉健太郎,浜本階生出版社/メーカー: オライリージャパン発売日: 2010...
今さら聞けないgit pushコマンド - Shoichi Matsuda's diary - Shoichi Matsuda's diary

pushと同時にリモートリポジトリにブランチを追加することもできる。

commit関連

ローカルリポジトリでのコミット

リポジトリを前回の(任意の)コミット時点まで戻す

addしたものも含めて全部なかったことにする。

HEADの部分をコミットのハッシュ値にすれば、任意のコミット時点に戻れる。

とある時点のコミットの中身を確認する

git resetより安全っぽい。

git reset、理屈はわかるんだけど、じゃあどういうときにどのオプションを使うんだっけ、というのは結構な頻度で調べたりする。めんどくさいので軽くまとめる。適宜増やしたい。(git resetオプションの基本的なことは、以下...
git resetでどのオプション(hard, mixed, soft)を指定すべきか、シチュエーション... - Qiita

直前のコミットのコミットメッセージを修正する

するとvimか何かで編集できるようになるので、お好みのメッセージに編集する。
下のコマンドように簡略化することもできる。

コミット時のメールアドレスやユーザー名を変更する

過去のコミットのメールアドレスとかユーザー名を変更したいときに使う。
自分のメールアドレスは登録したくないけど、github上のコミット歴にはプロフ画像を表示させたい、なんて時にメアドを変更する必要がある。

今後使うアドレスとかも変更するなら、まずはグローバルなユーザー設定を変更する。

そんで、変更したいリポジトリでターミナルを開いて、以下を実行。
このコマンドだと過去のコミット歴全てに関して情報が変更される。

以下のように、末尾でコミットのハッシュ値を指定してやれば、一つのコミットに対して情報を変更できる。

間違ってmasterブランチにコミットしてしまったコミットを移動

こんなコミットログだったとする。

コミットすべきだったブランチを作り、そっちにコミットをコピー。

masterブランチのコミットを削除。

通常ブランチを作ってからブランチを切り替えて実装を始めますが、たまにはうっかりブランチを作るのを忘れてしまうことありますよね。そんなときの対処法のメモです。要は新しく作った別のブランチにコミットを移動する方法です。間違えて3つm...
Gitでブランチを作るのを忘れてmasterにコミットしてしまったときの対処法 - Qiita - Qiita

push関連

rebase

共同開発を行っているリポジトリにおいて、開発ブランチで開発を行い、いざpushしてみようとすると、masterブランチでファイルが更新されてたためにコンフリクトで怒られてpushできない、なんてこと、よく起きる。
そんなときに使えるのがrebaseコマンド。

「Unmerged paths:」にあるファイルでコンフリクトが発生しているので、当該箇所を修正する。
修正が終わったら、また以下のコマンドを叩く。

rebase直前に戻したい時は、以下のコマンドを叩く。

git rebaseに関してはこのサイトが一番簡潔で分かりやすかった。
イメージ図もあってわかりやすい。

branch関連

branchの作成

branchの切り替え

branch名の変更

branchの削除

削除したいブランチ以外のブランチに移動してから、

tag関連

タグ名の変更

とりあえずURLのメモだけ。

タグ名を変更する うっかり間違った名前のタグをつけた場合などに、後から変更する方法です。手順としては新しいタグを追加し、古いタグを削除する流れです。 ローカルを変更
[Git] タグ名を変更する - とあるエンジニアの闇歴史帳
モバイルバージョンを終了