1. 目的
ソースコード整理のためにGitとGitHubを利用することにしたので、初心者向けのGitコマンド等を初心者レベルでまとめました。(備忘録も兼ねています)
間違っている部分や言葉が足りない部分があればご教示ください。
2. Git, GitHub
-
- 「分散型バージョン管理システム」
- ローカルのPCで編集作業を行い、ファイルの修正履歴も管理できる。
-
GitHub https://github.com/
- 「ソフトウェア開発プラットフォーム」
- Gitを用いてソースコードを管理するための共有ウェブサービス。
3. 環境構築
3-1. バージョン確認
$ git --version
git version 2.18.0.windows.1
3-2. ユーザ名とメールアドレスの設定
$ git config --global user.name 【ユーザー名】
$ git config --global user.email 【メールアドレス】
$ git config --list //設定の確認
user.name=【ユーザー名】
user.email=【メールアドレス】
...
4. GitHub使用
4-1. Gitの作業ディレクトリ作成
$ mkdir git
$ cd git
4-2. リポジトリをローカルにクローンする
リモートリポジトリの内容をローカルにクローンする。
リポジトリ:データを保存する場所。
リモートリポジトリ:サーバに保存され、共有されるリポジトリ。
クローン:リモートリポジトリを複製すること。
$ git clone git@github.com:【ユーザー名】/【リポジトリ名】.git
Cloning into '【リポジトリ名】'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (3/3), done.
クローンが完了し、リモートリポジトリの内容がローカルにコピーされている。
次に、ローカルリポジトリに移動する。
$ cd 【リポジトリ名】
4-3. リポジトリのブランチ
作成時のリポジトリにはmasterブランチのみが存在する。
$ git branch
* master
4-4. 作業ブランチの作成
$ git branch new_branch // new_branchという名前のブランチを作成
$ git branch
* master
new_branch
アスタリスクがついているブランチは現在選択中のブランチ。
new_branchブランチに移動する。
$ git checkout new_branch
Switched to branch 'add-new-file'
$ git branch
master
* new_branch
※参考:Gitのブランチの切り方はGitHub Flowのワークフローを採用
4-5. ファイルを追加してコミット
例えるならメールの下書き保存。
新規ファイル(今回はsample.txt
)はコミットする前にaddする必要がある。
$ git add sample.txt
$ git status
On branch new_branch
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: sample.txt
sample.txt
がコミットされていないのでコミットさせる。
$ git commit -a
$ git status
On branch add-new-file
nothing to commit, working tree clean
-a
:ここまでのすべての修正をコミットさせる
コミット:修正内容をローカルリポジトリに反映すること。
この段階で、ローカルでコミットが完了。
※参考
git addで変更されたファイルをステージングエリアに追加する方法【初心者向け】
git commitを使って変更内容をコミットする方法【初心者向け】
4-6. GitHubへプッシュする
プッシュ:ローカルリポジトリの内容をリモートリポジトリに反映すること。例えるならメールの送信。
$ git push origin new_branch
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 319 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To github.com:github-sample/test.git
* [new branch] new_branch -> new_branch
※参考
git pushを使ってリモートリポジトリへプッシュする方法【初心者向け】