忘れがちなGit & GitHubのTips集 – ファイル/ディレクトリ/リポジトリの変更時の操作

プロジェクトをスタートする時、とりあえず適当にファイル名やディレクトリ名をつけたり作ったりして始めがちだと思います。gitのリポジトリ名もしかり。途中で変更したり、削除したりすることもたまにあると思いますが、その際にGitやGitHubにおいても設定を変更する必要があります。この辺のコマンドは使用頻度が低いので忘れやすいと思うので、備忘録的にまとめておきます。

git GitHub · Build software better, together.

目次(Tip一覧)

Gitで管理しているファイル/ディレクトリの名前を変更する

プロジェクトを進めていくと最初の思惑とは異なり、途中でファイル名やディレクトリ名を変更したくなる時があると思います。その際は、実際のファイルやディレクトリの名前を直接変更するのではなく、まず以下のコマンドを実行します。そうすることでgitのindex側はもちろんのこと、実際のファイルやディレクトリの名前も同時に変更されます。

gitで管理しているファイル/ディレクトリの名前を変更する

$ git mv [変更前のファイル名/ディレクトリ名] [変更後のファイル名/ディレクトリ名]

[参考]

Gitで管理しているファイル/ディレクトリの場所を変更する

ファイル名やディレクトリ名の変更と同じように、途中でファイルやディレクトリを移動したくなる時があると思います。その際は、実際のファイルやディレクトリを直接移動するのではなく、まず以下のコマンドを実行します。そうすることでgitのindex側はもちろんのこと、実際のファイルやディレクトリも同時に移動されます。

gitで管理しているファイル/ディレクトリの場所を変更する

$ git mv [移動したいファイル/ディレクトリのパス] [移動後のディレクトリのパス]

[参考]

特定のファイル/ディレクトリをGitの管理から外す

プロジェクトの途中でファイルやディレクトリを削除する時があると思います。ファイルやディレクトリを削除したら、以下のコマンドでgitのindex側からも削除することができます。

gitで管理しているファイルを削除する

$ git rm --cached ファイル名

gitで管理しているディレクトリを削除する(オプション「-r」をつけます)

$ git rm -r --cached ディレクトリ名

ちなみに、Gitの管理から外すだけでなく、ファイル/ディレクトリそのものも同時に削除したい場合は、上記のコマンドからcached」を省いてコマンドを実行します。

$ git rm ファイル名

$ git rm -r ディレクトリ名

[参考]

ファイルやディレクトリをGitで管理しないように設定する

特定のファイルやディレクトリを[git rm cached]でgitの管理から外したとしても、プロジェクトのディレクトリの中にそのファイルやディレクトリが残っていたら、次に[git add]した時に、再度gitのindexに登録されてしまいます。

プロジェクトのディレクトリには残しておきたいが、gitでは管理したくない場合は、「.gitignore」ファイルに登録しておくことで、gitのindexに登録されなくなります。

まず、プロジェクトディレクトリの中に「.gitignore」ファイルを作成します。

$ touch .gitignore

作成した「.gitignore」ファイルをエディタで開き、管理したくないファイルやディレクトリを登録します。例えばgruntで使用するディレクトリ「node_module」などはgitでの管理は必要ないと思うので、以下のように「.gitignore」ファイルに記入して登録します。

$ vim .gitignore

node_modules

[参考]

GitHubのリポジトリ名を変更し、リモートリポジトリのURLをGitに反映する

GitHub上で作成したリポジトリの名前も、途中で変更したくなる場合があります。この場合は、GitHub上での設定変更と、Gitへの反映が必要となります。

まずGitHubのリポジトリ名を変更するには、名前を変更したいリポジトリのページに進んで、右のメニューにある「Settings」をクリックします。

Settingsのページに進んだらページの上部に「Settings」というものがあり、その中にある「Repository name」とラベルのついたフォームに変更したい新しいリポジトリ名を入力し「Rename」ボタンを押します。

リポジトリ名が変更されたら、リポジトリのURLも変更されます。画面上の右側に表示されているので、コピーしておきます。

GitHub上のリポジトリをGitでoriginとして登録している場合は、以下のように[git remote set-url]コマンドの後に「origin」、GitHub上でコピーした[新しいリモートリポジトリのURL]を入力し、Gitに反映させます。

$ git remote set-url origin [新しいリモートリポジトリのURL]

ちなみに以下のコマンドで、Gitに追加してあるリモートリポジトリ名とそのURLを確認することができます。変更前と変更後に確認しておくとよいでしょう。

$ git remote -v

origin	git@github.com:maechabin/wp-theme-maechabin.git (fetch)
origin	git@github.com:maechabin/wp-theme-maechabin.git (push)

[参考]

GitHub上のリポジトリを削除する

GitHub上にリポジトリを作成したものの、やっぱり最初からやり直したくなったとか、必要なくなったとかの理由で削除したくなることもあります。Git上のリポジトリを削除することは、あまりないと思うので、削除方法も忘れがちです。

まずは削除したいリポジトリのページに進んで、右のメニューにある「Settings」をクリックします。

Settingsのページに進んだらページの下部に「Danger Zone」というものがあり、その中にある「Delete this repository」というボタンを押します。

アラートがポップアップで表示されるので、削除したいリポジトリ名を入力フォームに入力して、「I understand the consequences, delete this repository」ボタンを押します

これでリポジトリは削除されます。ただし元に戻すことはできないので、細心の注意を払って行ってください。

リモートリポジトリの名前を変更する/削除する

こちらの利用頻度はかなり低いと思いますが、念のため書いておきます。

Gitで管理しているリモートリポジトリ「origin1」を「origin2」に名前を変更する

$ git remote rename origin1 origin2

Gitで管理しているリモートリポジトリ「origin」を削除する

$ git remote rm origin

Gitに登録されているリモートリポジトリ名を確認する場合は以下のコマンドを使います。

$ git remote

[参考]

コメント一覧

  • 必須

コメント