最初に
本記事では初学者が今すぐGitHubを使えるために書かれたものです。
GitとGitHubの正しい使い方や組織としての使い方,本来の目的をすっ飛ばしています。
「課題で今すぐ使わなきゃ」「友達と開発してみたいけど他の記事は難しい」といった方向けの記事です。
Git,GitHubってなんや?
- Git:バージョンを管理するソフト
- GitHub:Gitで管理されたソースコードをクラウド上に上げ,複数人で共有するwebサービス
要するにGitを使ってローカルのコードを管理して,みんなで開発する用の共有ストレージに上げ
るイメージ.この時のストレージがGithub
Git・GitHub
Gitは3段階の状態で管理されています。
- ワークツリー
いわゆる作業ディレクトリ. 開発しているもののルートディレクトリです.ここからインデックスに上げる. - インデックス(ステージ)
リポジトリに上げる前の準備状態.リポジトリにすべての変更を上げないよう変更したいものだけをきちんと管理するための場所. - ローカルリポジトリ
プロジェクトのすべてのファイルと変更履歴を管理する場所. メインの倉庫みたいなもの.
流れでいうと上から下の順で流れていきます.
GitHubは上記のGitのローカルリポジトリをweb上にも作ったものです.
共同開発者はGitで管理したローカルのリポジトリからGitHubにあるweb上のリモートリポジトリに上げます。
上記の操作をそれぞれ
- ワークツリー >> インデックス add
- インデックス >> ローカルリポジトリ commit
- ローカルリポジトリ >> リモートリポジトリ push
と言います.
実際に使おう
参加者がやること
- GitHubからリポジトリをローカルに落とす
$ git clone <url>
2.ブランチの切り替え
git・githubはブランチという枝分かれで管理されます
機能ごとにブランチを分けていくことが望ましいです
おそらくリーダーがブランチを指示してくれるのでそれに合わせましょう
$ git checkout <リポジトリ名>
チェックアウトができたかを確認してみましょう
$ git status
ブランチ名が自分が指定したものになっていたらOKです
3.ファイルの変更・開発を行ったら
機能や修正を1単位として,変更後は以下のことを行います
- git add
git add <変更したファイル名> #基本構文
git add . #自分が今作業しているフォルダの中身だけをまとめて追加
git add -u #新しく作った一時ファイルやテストファイルは無視
git add -A #リポジトリ全体のすべての変更
わかなければgit add -Aをしておけばとりあえず大丈夫です
- git commit
git commit -m "ここにコメントを書く" #新規ファイルを作ったときはこれ
git commit -am "コメント" #修正だけを行ったとき.add -uを勝手にしてくれる
- git push
git push
以上でリモートリポジトリにプッシュするまでができました
機能の開発ができたら分けたブランチから本筋に戻す必要があります
4.プルリクエスト
本筋(mainブランチ)に合体申請することをプルリクエストといいます
プルリクエストはターミナルからではなくgithubのwebページで行います
自分のリポジトリをwebで開くとCompare&Pull requestがあるのでクリックしてください
複数の種類がありますが基本的にはCreate a merge commitを選択すれば問題ないです
5.ブランチの削除
マージされた後,ブランチを使わなくなった場合はブランチを本筋に戻していらないブランチは削除します
git checkout main #mainブランチに移動
git pull #最新のリポジトリに更新
git branch -d <ブランチ名> #いらないブランチの削除
6.ブランチの作成
1機能1ブランチと考えて新しいブランチを作りましょう
新しいブランチ名は命名規則にのっとるか,簡単にしたい場合は機能名でもいいかもしれません.
git checkout -b <新しいブランチ名>
最後に
以上で最低限のコマンドとその流れはできたかと思います
わからなければ詰まったとこのコマンド名で検索すればそれを詳しく説明したページもいっぱい落ちているので探してみてください