Gitをインストール
追記
Githubにアカウントを作成
Gitは自分のPCでソースコードのバージョン管理を行うソフト
GithubはWeb上で他のユーザーとソースコードの共有などを行うサイト
ひとまずはこんな理解で進める。
アカウント作成
追記
Gitで初期設定
1 2 |
git config --global user.name [Github上の名前] git config --global user.email [Github上のメールアドレス] |
GitにGithub上のユーザー名とメールアドレスを登録する
GithubにRepositoryを作成
追記
Djangoプロジェクトを用意
この記事では省略。
Githubへのアップロード
Gitを起動
Djangoプロジェクトのフォルダへ移動
1 |
cd [フォルダパス] |
Git上でフォルダパスをコピペできない場合は、フォルダをドラッグ&ドロップするとフォルダパスをコピーできる
ローカルリポジトリを作成
1 |
git init |
インデックスにファイル更新を登録
1 |
git add . |
” . “は現在のディレクトリ(Djangoプロジェクトフォルダ)にある全てのファイルをインデックスに登録できる
プロジェクト内の各ファイルを変更したら、都度この操作を行うと、変更を反映することができる。※この時点ではまだローカルリポジトリの変更なので、Github上にはアップロードできていない。
現在の状態を確認
1 |
git status |
git add . などで変更した後にこのコマンドを実行することで、インデックスに登録された内容を確認することができる。
↓このような表示になることを確認
1 2 3 4 5 6 7 8 9 10 11 |
On No commits yet No commits yet Change to be committed: (use "git rm --cached ,file...." to unstage) new file :Djangoプロジェクト/__init__.py new file :Djangoプロジェクト/__pycache__/__init__.cpython-38.pyc ・ ・ ・ |
“new file ~”
↑こちらの文字が緑色で記載されていれば登録完了。
赤色で表示されていれば登録未完了。
コミットでインデックス内の変更履歴を保存
1 |
git commit -m "test commit" |
“test commit”はコミットに関するコメント。自由に記述できる 。
どのような変更を行ったのか簡潔に書いておくとわかりやすい。
以下のような表示になればOK
1 2 3 4 5 6 |
[??] files changed, [??] insertions(+) create mode ~ ・ ・ ・ |
[??]は変更・挿入されたファイルの数
過去の変更履歴を確認
1 |
git log |
過去の変更履歴を確認できる
↓このような表記になる
1 2 3 4 5 6 |
commit ~~~ #コミットID Author : ~~~ #コミット実行者 Date: ~~~ #コミットした日時 test commit #コミット時のコメント内容 |
過去のコミットに戻る
1 |
git checkout HEAD^ |
” ^ “の数で何回前のコミットまで戻るか指定できる。
git logと合わせて使うことが多い。
過去の変更履歴を確認できる
最新のmasterブランチに戻る
1 |
git checkout master |
過去のコミット分まで戻った時、新しいブランチが作成され、その上で作業を行うことになる。
このコマンドは、もう一度最新のブランチ(master)に戻る場合に使用する。
新しいブランチを作る
1 |
git checkout -b test new branch |
“git checkout -b”で新しいブランチの作成
“test new branch”は新しいブランチの名前
リモートリポジトリとローカルリポジトリを紐づける
1 |
git remote add origin [URL] |
originに対して、リモートリポジトリのURLを紐づけするコマンド。
Github上にあるリモートリポジトリとやりとりする際、毎回そのURLを打ち込むと手間がかかるので、
このコマンドを実行すると、Gitではoriginを指定するとGithub側で紐づけられたリモートリポジトリを指定して操作することができる
後述の手順でリモートリポジトリのURLを取得し、実行する。
リモートリポジトリのURL取得手順
・リポジトリの右上の方にある緑色の「Code」をクリック
・URLの右端にあるアイコンをクリック
リモートリポジトリの紐づけを確認
1 2 |
git remote #origin |
↑リモートリポジトリと紐づけされている名前がわかる。※今回はorigin
また、↓こちらのように “-v”をつけるとoriginに紐づけられたURLを確認することができる
1 2 |
git remote -v # origin https://github.com/~~ |
Githubの情報を取得
1 2 3 4 |
git fetch origin main #git fetchでもよい git pull origin main #git pullでもよい |
“pull”と”fetch”の違い
“git pull”はリモートリポジトリの情報を取得し、ローカルリポジトリに反映。さらにソースコードにまで取得した情報を反映する
“git fetch”はリモートリポジトリの情報を取得し、ローカルリポジトリに取得するが、ローカルのソースコードまでは反映しない。反映させたい場合はmergeコマンドが必要
リモートリポジトリの内容をそのまま手元のソースコードにまで取り込みしたいときはpullで良い。
ただし、リモートリポジトリと手元のソースコードのどちらにもあるコードがそれぞれ異なっている場合は、手元のソースコードが上書きされてしまう点は要注意。
gitへの接続プロトコルをsshにする
接続プロトコルの確認
1 2 |
git config -l | grep remote.origin.url #remote.origin.url = https~ |
httpsから始まるURLがセットされていればOK
リモートURLをSSHのパスに書き換え
コメント