はじめに
今更ながらgitを使い始めたが、忘れやすので必要なものを書いておく。
使用環境
OS: Windows7 Professional
Tool:Git
Terminal:Mintty
Gitって
出遅れたので、今さら説明するのも何なので、詳細は割愛。
分散型バージョン管理システムというものらしい。
CVSとの違いは、ざっくりと言うと集中型か分散型かの違い。つまりコミット先がローカルにあるから、コミット(チェックイン)できるよってことかなぁ。
初期設定
必要に応じて
まずは何はともあれ、やってみよう!ということで初期設定。
コマンド実行後どうやらエディタに引き渡されて編集することがあるらしいので、エディタを設定しておいた方が良さそう。
.gitconfig
は直に修正しても良いし、コマンドを実行すると登録されるのでそれでも良い。
最終的にこうなっていれば大丈夫。
いつものがいいって人はこっち。例は秀丸
export GIT_EDITOR="'/C/Program Files/hidemaru/hidemaru.exe' //fu8"
export EDITOR=
やっぱりコマンドといったらVimがいいって言う人にはこっち。
[core]
editor='C:/Git/usr/bin/vim.exe'
コマンドで設定する場合
+ 成功: git config --global core.editor 'C:/Git/usr/bin/vim.exe'
ポイントは、フルパスで書くこと!
- 失敗: git config --global core.editor 'vim -c "se fenc=utf-8"'
※理由不明。vimの初期設定でUTF-8起動するようになっているから、そもそもUTF-8の設定は不要かも。
その他設定
[user]※コミットしたときの名前になる
name = 名前
email = aaa@aaa.com
[core]
ignorecase = false # ファイル名の大文字小文字を区別するように
autocrlf = false # 改行コードを自動で変更しない
safecrlf = true # 改行コードの混在を許可しない
[color]※色が変わる?
ui = auto
diff = auto
status = auto
branch = auto
[include]
path = gitarea/gitalias.config # gitのalias記載するファイル
[diff]
tool = WinMerge
[difftool "WinMerge"]
path = c:/tools/WinMerge/WinMergeU.exe
cmd = ¥"/c/tools/WinMerge/WinMergeU.exe¥" -r -e -u "$LOCAL" "$REMOTE"
[merge]
tool = WinMerge
[mergetool "WinMerge"]
path = c:/tools/WinMerge/WinMergeU.exe
cmd = ¥"/c/tools/WinMerge/WinMergeU.exe¥" -r -e -u "$LOCAL" "$REMOTE" "$MERGED"
[alias]
windiff = difftool -y -d -t WinMerge
winmerge = mergetool -y -t WinMerge
設定したConfigの確認
git config --list
直接修正したい場合
ホーム直下に.gitconfig
があるので、直接エディタで開いて編集する。
※globalの場合
それでもエディタの挙動がおかしい場合
- パスの確認
- 設定ツール確認
上記ならば、エディタがそのパスに存在し起動出来る事の確認とか、vimとは別にviが別に存在しないこととか確認したらどうかなぁ。
失敗したときのエラーメッセージ
こんな時は、vim
ならば、CTRL+C
のあと、:cq
でキャンセル出来るよ。
hint: Waiting for your editor to close the file... Vim: 警告: 端末への出力ではありません
Vim: 警告: 端末からの入力ではありません
hint: Waiting for your editor to close the file... error: cannot run : No such file or directory
error: unable to start editor ''
Please supply the message using either -m or -F option.
困ったらマニュアルも確認
<参考>Git日本語ページ
https://tracpath.com/docs/