Git: 日々の開発で使うコマンド
LAN内専用のGitサーバーを利用して少人数でグループ開発する、という場合での作業の流れを自分なりに考えてみました。
個人の開発作業
masterブランチは原版とし、開発作業は新たにブランチを作成してそこで行います。
ひとまとまりの作業が完了したらmasterに統合し、作業ブランチを削除して終了とします。
GitHub Flowとは少し違いますが、より簡単で分かりやすいのではないかと個人的に思います。
git checkout -b "作業ブランチ名" #### (何らかの編集を行う) #### git add -A . git commit -m "コミットメッセージ" git checkout master git merge "作業ブランチ名" git branch -d "削除する作業ブランチの名前"
Gitサーバーへアップロード
Gitサーバーと個人リポジトリとの同期は、お互いのmasterブランチで行うようにします。
git push origin master # 他者が既にアップロードしていた場合は、その変更を自身のリポジトリに取り込む git pull origin #### (衝突があれば解消する) #### git add -A . git commit -m "衝突があった場合は手動でコミットする" # その後、改めてpushする
確認・履歴
# 現在のブランチの確認や、変更のあったファイルの一覧 git status # コミットの履歴を表示 git log # コミットの履歴を簡単に表示 git log --oneline # コミットの履歴を図で表示 git log --oneline --graph # `.gitignore`で実際に無視される予定のファイルを確認 git ls-files -oi --exclude-standard
もしもの時に
# すべての変更を取り消して直前のコミットの状態に戻す git reset --hard git clean -df
その他
# Gitの監視対象のフォルダを削除したい場合 git rm -r フォルダ名/ # リモートのパスを変更する git remote set-url "リモート名" 新しいパス # コミットにタグを付ける git tag 7.4.0 git push --tags
- タグに使うバージョンナンバーの記述方法: セマンティック バージョニング 2.0.0
Gitの初期設定
# ユーザー名とメールアドレスを登録する。 # `git log`の`Author`欄などに反映される。 git config --global user.name "宮崎 雄策" git config --global user.email "toumin.m7@gmail.com" # ファイルを比較する際、パーミッションの違いについては無視する git config core.filemode false
余談: おすすめの動画
GitHub公式のGit入門動画です。
なぜこの動画の再生数が少ないのかが分かりません。
こんなにおしゃれで、分かりやすくて、英語の勉強にもなって、例示の端末画面が大きくて見やすい動画は、なかなかないと思います。