Git関連メモ

Git関係での困ったこととその対処方のメモ。

うっかり詰まったり日々戦っている。
※逐一更新項目。

『fatal: Unable to create '~/.git/index.lock': File exists.』で何も動かぬ

なんと『index.lock』を消すだけ!
なんという力技だろう…
pullも切り替えもできなく、正直焦った…

最後にコミットしたあの頃に戻りたい…

切り替えて戻して、差分をあーだこーだ色々やってしまったり、なにかもう戻したいとき

git reflog

と打ち込むと

d3efbcd HEAD@{0}: pull -v --no-rebase --progress origin: Fast-forward
7fb59c2 HEAD@{1}: pull: Fast-forward
18826a3 HEAD@{2}: clone: from https://github.com/~.git
16ace8b HEAD@{3}: commit: 助けてパトラッシュ

と出てくるので、戻したい場所に向かって呼び出す。
下記は仮として3番を呼び出した例。

git reset --hard HEAD@{3}

Gitを外部のサーバに置きたい

Gitホスティングサービスを使うのです。
基本的に無料で使える。
無料でもプライベートリポジトリを使うことも出来るものもあり、とてもありがたい。

  • GitHub:誰もが知る有名所。上げとくと評価されるし転職に有利かも。日本語非対応だが、勘で使えるので気にならない。
  • Bitbucket:日本語対応。個人的にはGithubより使いやすい。
  • GitLab:日本語対応。結構有名所。
  • Visual Studio Team Services:日本語対応。Microsoft製だから安心かも。
  • Assembla:svnも対応。
  • Phacility:svnも対応。

他にもDropboxやGoogleドライブに、Gitファイルを置いて使う方法もあるけど、割と管理が面倒くさいから借りたらいいと思う。

Windows 10のGitツール、ログイン問題

今回はTortoiseGitで起きた問題ではあるが、GIT Extensions等他のツールでも起きうる。
どちらにしても『Windows 10のTortoiseGitにて、ログイン失敗問題各種と解決方法』で解決が可能。

Git PR(プルリクエスト)からDiff対象外として指定

『.gitattributes』ファイルを作成することで対応可能。
その設定方法については『Githubにて、表示される言語情報を、自分で指定する方法』を参照ください。

Git更新対象外を設定する『.gitignore』

プロジェクトや使うOSS次第では、UPしたくないファイルが出てくる。
そんなときはGit更新対象外設定ファイル『.gitignore』を作る。

個人的には下記くらい。あくまで参照程度に…。

リポジトリ管理対象に出来ない

TortoiseGitで、何度管理対象にしようとも、管理対象になってくれない。
そういうときはGITのcacheの可能性がある。奴は残すのだ、キャッシュ。

コマンドで下記を実行する。

git rm -r --cached .
git add .
git commit -m ".gitignore is now working"
git push origin master

ただ、これをやると、現在ディレクトリにあるものはUPされてしまう。
なので『.gitignore』や『.gitattributes』で対象を制限してから実行することをオススメする。
参照:.gitignore の設定を反映させる - Qiita

コメント

タイトルとURLをコピーしました