アゴドリルの備忘録

まったり競技プログラミングとCTFなど

Gitの基本操作

学内でGit,dockerなどの開発環境について勉強する(ゆるふわ)勉強会があったので物理学科ながら参加してみた。Git回だったのでまずはローカルでのgitの基本操作について復習としてまとめてみる。

基本的なコマンド

  • git init
  • git add
  • git commit
  • git status

gitレポジトリの作成

今回は作業用ディレクトリとしてzinken_reviewを作成し移動。

$ mkdir zinken_review
$ cd zinken_review

gitで管理したいのでgit initコマンドを使用してgitレポジトリを作成する。

$ git init

そうするとInitialized empty Git repository in ~/zinken_review/.gitと表示されて空のgitレポジトリが作成されてgitで管理・運用ができるようになる。

確認としてlsコマンド

$ ls -a

を実行すると.gitファイルがあるのが確認できる。

基本の流れ

ファイルの作成・変更→git add→git commit
の順に作業をしていく。

空の状態なので新たにテスト用ファイル(今回はtest1.txt)を作成・編集をして、これをコミットする作業を行う。


①test1.txtを作成・編集

②ファイルをステージングエリアにあげる

ステージングエリアにあげるにはgit addコマンドを使用する。

$ git add test1.txt

③コミットをする。コミットをするにはgit commitコマンドを使用する。実行するとviが起動してコミットメッセージを書くことができる。

$ git commit


コミットメッセージをemacsで書きたい場合は、以下のコマンドを実行するとコミットメッセージがemacsでかけるようになる。

$ git config --global core.editor 'emacs -nw'

これで更新終了。

ファイルの編集・追加→git add→git commitが一連の流れ

↑これ大事

git statusについて

どれをステージングエリアに上げたか否か、コミットしたか否かを調べるにはgit statusコマンドを使う。

変更したファイルをステージングエリアに上げていない状態でgit statusコマンドを使用すると以下のような表示になる。

f:id:agodoriru:20170809190858j:plain


変更・追加したファイルをステージングエリアに上げて、コミットしていない状態でgit statusコマンドを使用すると下のような表示が出る。

f:id:agodoriru:20170809190848j:plain


すべてのファイルがコミットまでされて最新の状態である場合は下のようになる。

f:id:agodoriru:20170809191532j:plain


ブランチ関連のコマンド

  • git branch
  • git checkout
  • git merge

ブランチの作成・切り替え・結合

ブランチを作成する時はgit branchコマンドを使用する。
試しにtest_branchという名前のブランチを作成する。

$ git branch test_branch

現在のブランチ一覧を確認するときも同様にgit branchコマンドを使用するとbranchの一覧が表示される。

$ git branch

"*"マークが付いているところが現在いるブランチである。


ブランチの切り替えをしたい場合にはgit checkoutコマンドを実行する。

$ git checkout test_branch


ブランチを結合するにはgit mergeコマンドを使用する。
masterにtest_branchをmergeする場合には、まずmasterに移動する。それからgit margeコマンドを用いてブランチを結合する。

$ git checkout master
$ git merge test_branch


他にもgit logコマンドやGithubとの連携など、様々なコマンドがあるので調べてまとめたい。

参考
Git - Book
サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ