これができればチーム開発に参加できます!
最低限のGitとGitHubの使い方を学ぶことができます.私が普段使うコマンドをまとめて説明します.
基本的に,コピペで実行できます.エラーがあればissueに書いてください.
- クローン
- git管理
- sshでのGitHub
- GitHubへ保存する
- 変更をGitHubへ反映する
- 他の人の変更を取り込む
- ブランチを使って開発する
- gitignore
- Host: MacBook Pro 14 inch
- OS: macOS Sequoia 15.1
- Shell: zsh 5.9
linuxでも同様にできます.Windowsの場合はGit Bashを使ってください. Git Bashのインストール方法は次の記事を参考にしてください. WindowsにGit Bashをインストールする
これができれば天才の開発したコードを使うことができます.
まずは,このリポジトリをクローンしてみましょう.
以下のコマンドをターミナルに入力してください.
git clone https://github.com/tomoswifty/learn-git-for-code-management.git
すると,今いる場所にlearn-git-for-code-management
というフォルダが追加されています.
公開されているコードには,ブランチで分けられている場合があり自分の環境に合わせたバージョンのコードになっている必要があります.
そこで,複数のバージョンを公開する場合によく用いられる方法として複数のブランチが公開されています.
git clone -b ブランチ名 https://github.com/tomoswifty/learn-git-for-code-management.git
これで,指定したブランチのリポジトリをクローンできます.先ほどのmainブランチではなく,feature-branch
ブランチが追加されています.
特にこのリポジトリは必要ありませんので,削除して構いません.
まずはgit管理したいファイルを作成します.
learn-git
というフォルダを作成して,その中にtest.txt
というファイルを作成しましょう.
mkdir learn-git
cd learn-git/
touch test.txt
text.txt
にHello, World!
と記入しましょう.
nano test.txt
ctrl + x
→y
→Enter
で保存して終了です.
Note
nanoが使えない場合
nano
が使えない場合はインストールしましょう.
brew install nano
もしくはvim
など他のエディタを使ってください.
ここで,ファイルを確認しましょう.
ls -a
このように表示されているはずです.
$ ls -a
. .. test.txt
次にファイルの中身を変更しましょう.
cat test.txt
このように表示されていれば成功です.
Hello, World!
git init
これでgit管理されます. 以下のように表示されれば成功です.
$ git init
Initialized empty Git repository in /Users/{YOUR USERNAME}/learn-git/.git/
コミット前に必要なおまじないです.
git add -A
git commit -m "first commit"
これがコミットです. 変更が保存されます.
sshでGitHubにアクセスする方法を紹介します.
cd .ssh
このとき,.ssh
がなければ作成します.
mkdir .ssh
ssh鍵を生成します.
ssh-keygen -t rsa
作成できたか確認します.
ls -a
このように,id_rsa
とid_rsa.pub
が表示されていれば成功です.
$ ls -a
. id_rsa
.. id_rsa.pub
公開鍵を確認します.
cat id_rsa.pub
この中身をコピーします.
GitHubにsshキーを登録します.
GitHubにログインし,右上のアイコンから「Settings」を選択します.
左のメニューから「SSH and GPG keys」を選択します.
「New SSH key」をクリックします.
「Title」に任意の名前を入力し,「Key」に先ほどコピーした公開鍵を貼り付けます.
「Add SSH key」をクリックして登録完了です.
これで,sshキーの登録は完了です.
GitHubにリポジトリを作成します.
ブラウザからGitHubにアクセスしてサインインします.
この画像のように,緑色の「Create repository」ボタンをクリックしてリポジトリを作成します.
リポジトリ名は「learn-git」とします. 「Public」を選択し,「Add a README file」のチェックは外します.
作成したら,以下のような画面が表示されます.
ここのQuick setupのSSHをクリックします. 以下のような画面が表示されます. 前章で作成したsshキーを使ってこのリポジトリにアクセスします.
この画像にあるコマンドを次章で実行します.
ターミナルへ戻ります.
commitまでは完了していますので,次はリモートリポジトリを追加します. その前に,おまじないです.
git branch -M main
これは,ブランチ名をmainに変更するコマンドで,昔はmasterという名前でした.転換期に必要なコマンドでしたが最新版のgitではデフォルトでmainになっているので不要ですが,念のため実行しておきます.
そして,リモートリポジトリを追加します.
git remote add origin git@github.com:YOUR_GITHUB_USERNAME/learn-git.git
ここで,git@github.com:YOUR_GITHUB_USERNAME/learn-git.git
の部分は,先ほどGitHubで作成した自身のリポジトリのURLに変更してください.
git push -u origin main
これでGitHubへpushできました.
$ git push -u origin main
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 228 bytes | 228.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
To github.com:YOUR_GITHUB_USERNAM/learn-git.git
* [new branch] main -> main
branch 'main' set up to track 'origin/main'.
GitHubのページをリロードして,リポジトリが更新されていることを確認してみましょう.
nano test.txt
git add -u
git commit -m "add a comment"
git push -u origin main
4章と同様に,GitHubのページをリロードして,リポジトリが更新されていることを確認してみましょう. 変更が反映されていれば成功です. コミットメッセージも変更されているはずです.
GitHubのページで変更を加えます.
GitHubのページで「Add a README」をクリックします.
タイトルを記入して「Commit changes」をクリックします
コミットメッセージを確認して,「Commit」をクリックします.
git pull origin main
$ ls
README.md test.txt
となって変更を取り込むことができました.
git branch dev
git push origin dev
いらないファイルをgit管理から除外することができます.
git管理から外すファイルを作成してみます.
touch dummyfile.txt
macOSでは.DS_Store
がたびたび作成されます.
わざわざpushする必要はないので,.gitignore
に追加しましょう.
nano .gitignore
.DS_Store
dummyfile.txt
これでpushしてみましょう. すると,リモートリポジトリにはdummyfile.txtが反映されていないはずです.
これでひととおりGitとGitHubを使うことができるようになったと思います.
しかし,まだまだgitを使いこなすには知識が足りません.本来の機能であるrevertやPull Request,issueなどを使うことでよりgitを使いこなすことができます.
もっと学びたい方は参考文献をご覧ください.