LoginSignup
0
0

More than 3 years have passed since last update.

Gitを学ぶ 2日目 Gitコマンドの続き

Posted at

はじめに

 この記事は現代のソフトウェア開発では欠かせない技術となっているGitについて、記事の著者が学習した内容をアウトプットするためのものである。したがって、この記事に書かれた内容は必ずしも正しいとは限らない。
 もし、間違っていることを書いていたり、誤解していることなどが見受けられたら、是非コメント等にて教えていただけるとありがたい。また、著者は「いちばんやさしいGit&Githubの教本」を用いて学習を行っている。本記事にて興味が湧いた方はぜひご購入いただきたい。

前回の記事
Gitを学ぶ 1日目 Gitとは

変更の取り消し

 バージョン管理を行っていると、変更を取り消したいと思うこと出てくる。そこで用いられるコマンドがgit checkouとgit resetである。

 git checkoutは直前にコミットした状態まで戻すことで、ワークツリーの変更を取り消すことができる。
git checkout -- FilePath とすることで、直前にコミットした状態まで戻す。この操作は厳密にはステージングエリアの状態を戻すコマンドである。

ワークツリー変更の取り消し
$ git checkout -- FilePath

git resetはgit reset HEAD FilePath とすることで、ステージングエリアの状態を最後のコミットと同じ状態にリセットする。HEADはローカルリポジトリにおいて、最後にコミットした状態を意味する。

ステージングエリアへの登録の取り消し
$ git reset HEAD FilePath

Gitの管理下にあるファイルを削除する

 Gitの管理下にあるファイルを削除する場合、そのファイルを削除しただけでは不十分である。削除した内容をステージングエリアに登録し、コミットしなければならない。しかし、git rmコマンドを使うことでこれらのことを自動的にしてくれる。このコマンドを実行すると、ワークツリーからファイルやディレクトリを削除し、削除した状態をステージングエリアに登録する。ディレクトリを削除するときは-rオプションをつける。

ファイルをGit管理下から削除
$ git rm FilePath
ディレクトリをGit管理下から削除
$ git rm -r DirectoryPath

Gitで管理しないファイルを設定する

 Gitでバージョン管理すべきでないファイルも存在する。例えば、アプリケーションのビルド時に自動生成されれるログやパッケージファイル、セキュリティに関することが書かれたファイルといったリモートリポジトリで共有すべきでないものである。
 そこで、.gitignoreファイルというテキストファイルをローカルリポジトリに配置し、そこにGit管理下に置きたくないファイル名やディレクトリ名を書くことで、Git管理下から外すことができる。
 手順は以下の通りである。

.gitignoreで設定
$ touch .gitignore      # .gitignoreファイルを作成
$ vim .gitignore        # .gitignoreファイルを編集
$ git add .gitignore    # .gitignoreファイルをステージングエリアに登録
$ git commit -m ".gitignoreファイルをGit管理下に追加"

なお、.gitignoreファイルの書き方に迷ったら以下のGitHub社のリポジトリを参考にすると良い。
.gitignoreファイルの書き方

今回の記事はこれにて終了とする。

次回の記事
未投稿

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0