Gitコマンド・設定まとめ40選

Gitコマンド・設定まとめ40選

良く使うgitコマンド、覚えたいgitコマンドを記載していきます。

(随時更新して蓄積していくまとめ記事です)

設定ファイル(config

設定確認

$ git config -l
or
$ git config --list

アカウント設定

$ git config --local user.name "[ユーザ名]"
$ git config --local user.email "[メールアドレス]"

改行コード変換なし設定

$ git config --global core.autoCRLF false
https://normalblog.net/system/git/lf_replaced_crlf

~/.gitconfigにalias記載

 $ cat ~/.gitconfig

[user]

name = xx email = xx@xx.com

[core]

autocrlf = true

[alias]

st = status co = checkout tr = log –graph –pretty=’format:%C(yellow)%h%Creset %s %Cgreen(%an)%Creset %Cred%d%Creset’

ローカルブランチ編

ローカルでブランチを切る

$ git branch [ローカルブランチ名]

リモートリポジトリのブランチをローカルにブランチを切ってチェックアウトする

$ git checkout -b [ローカルブランチ名] [リモートリポジトリ名]/[リモートブランチ名]

ローカルでブランチを切る

$ git branch [ローカルブランチ名]

ローカルの変更を取り消す(管理対象

$ git checkout .

ローカルの管理対象外のファイルを削除

$ git clean -f

ローカルの変更を作業ツリーからインデックスへ移動(指定ファイル

$ git add [ファイル名]

ローカルの変更を作業ツリーからインデックスへ移動(全部

$ git add .

ローカルブランチを削除

$ git branch -D [ブランチ名]

ローカルブランチ名変更

$ git branch -m [旧ブランチ名] [新ブランチ名]

ローカルブランチ一覧・確認

$ git branch

リモートブランチ編

リモートブランチを削除

$ git push --delete [リモートリポジトリ名] [リモートブランチ名]

ローカルブランチをリモートブランチにpushする(同ブランチ名

$ git push [リモートリポジトリ名] [ローカルブランチ名]

ローカルブランチをリモートブランチにpushする(ブランチ指定

$ git push [リモートリポジトリ名] [ローカルブランチ名]:[リモートブランチ名]

ローカルブランチにリモートブランチをpullする(同ブランチ名

$ git pull [リモートリポジトリ名] [ローカルブランチ名]

ローカルブランチにリモートブランチをpullする(ブランチ指定

$ git pull [リモートリポジトリ名] [リモートブランチ名]:[ローカルブランチ名]

リモートブランチ一覧・確認

$ git branch -r

ローカルブランチ、リモートブランチ一覧・確認

$ git branch -a

リポジトリ編

リポジトリ作成

$ mkdir test.git
$ cd test.git
$ git --bare init --share

クローン

$ git clone test.git

登録済のリモートリポジトリの確認

$ git remote -v

リモートリポジトリとしてaddする

$ git remote add [任意リモートリポジトリ名] [URL]

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

$ git remote set-url [任意リモートリポジトリ名] [URL]

リモートリポジトリの登録削除(実際のリモートリポが消えるわけではない

$ git remote rm [任意リモートリポジトリ名]

リモートリポジトリの最新情報を見られるようにする

$ git fetch

リモートリポジトリの最新情報を見られるようにする(消されたブランチも消す

$ git fetch --prune
or
$ git fetch -p
https://normalblog.net/system/git/initial_commit

リポジトリをコピーする

## コピー先リポジトリが準備されている事が前提
$ git clone [コピー元URL]
$ git remote add [コピー先任意リポジトリ名] [コピー先URL]
$ git push --mirror [コピー先URL]

マージ編

マージ(コメント付加

$ git merge --no-ff [マージ先ブランチ名] -m "コメント"

マージ(コミット直前まで

$ git merge --squash [マージ先ブランチ名]

 タグ編

タグ作成

$ git tag testtag

タグ一覧確認

$ git tag

タグを全部push

$ git push [リモートリポジトリ名] --tags

無視設定

共有で無視

.gitignoreに記載

.gitignore 該当ディレクトリ配下無視したい場合

.gitignoreに以下を記載

/test/cache/*

.gitignore 該当ディレクトリ配下無視したいが例外(.gitkeep)がある場合

ファイルがないディレクトリはコミットされないので.gitkeepという空ファイルを作っておくとディレクトリがコミットされる。でもキャッシュディレクトリなのでゴミが入っている場合などの設定。

/test/cache/*
!/test/cache/.gitkeep

自分の環境だけで無視

.git/info/exludeに記載

履歴

ファイルの履歴

git blame ファイル名

git 容量制限 容量節約方法・ガベージ等

いくつか対応方法があります。やったものを記載しておきます。

ローカルリポジトリをバックアップしておいてからやれば安心です。

容量確認

$ git count-objects -vH

ガベージ

$ git gc
$ git push origin master

新リポジトリへミラーリング

## コピー先リポジトリが準備されている事が前提
$ git clone [コピー元URL]
$ git remote add origin [コピー先URL]
$ git push --mirror origin

履歴削除して一新して新リポジトリへ移行

## コピー先リポジトリが準備されている事が前提
$ git clone [コピー先URL]
$ cd [新リポジトリ名]
## 新リポジトリ内に既存リポジトリファイルを格納する(この時に画像など不要ファイルがあれば削除する)
$ git add .
$ git commit -m "initial commit"
$ git remote add origin [新リモートリポジトリ名]
$ git push origin master

リポジトリ分割

ディレクトリで分割して管理出来るものは別リポジトリにする。無料サービスでの1リポジトリの制限のためです。

バッチ化

定期ログなどでコマンドを都度打つのが面倒だったのでバッチ化しました。

その他

githubやbitbucketなどの無料サービスをやめてサーバにリポジトリをたてれば、1GBの制限など気にせずすみますので、本来はこれが。

.

Comments

No comments yet. Why don’t you start the discussion?

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です