- 投稿日:2020-11-12T22:23:39+09:00
Github基礎
Github基礎操作
目的:基礎操作の習得
前提スキル
・linux等 OSをターミナルで操作出来るレベル
・エディタの操作 Atom VScodeターミナル
cd/cat/mkdir/touchなどは使えるレベルが前提Gitとは?
gitファイルのバージョンを管理する
gitはデータをスナップショットで保存する
[リモート]
リモートリポジトリ
--以下ローカル環境--
[ローカル]ローカルリポジトリ
スナップショットで記録するステージ
コミットする変更を準備する所ワークツリー
自分の作業git 設定
- $git config --global user.name "github user name" $git config --global user.email xxxxxxxx@gmail.com 使用するエディタv $git config --global core.editor "atom --wait" $git config user.name github user name $git config use.email xxxxxxxx@gmail.com $git config --list 登録情報一覧 $cat ~/.gitconfig 情報表示 設定場所ローカルリポジトリの作成
.gitディレクトリが作成(ローカルリポジトリ)
必要なものも同時に作成される$cd Documents Documents$mkdir git_study Documents$ls git_study Documents$cd git_study Documents/git_study$git init ローカルリポジトリの作成 Doc~$git init 作成の確認 Doc~$ls -a . .. .git Doc~$ls .git/ HEAD branches config description hooks info ... object リポジトリの本体 config 設定ファイルリモートリポジトリ作成
$git remote add origin URL 今後origin で使用ができるためURLを使用してなくて使用したほうが良い $git push -u origin masterリモートリポジトリの操作 変更・削除
変更 $git remote rename old_name new_name 確認 $git remote 削除 $git remote rm リモート名 リモートリポジトリの追加 リモートリポジトリは複数可 $git remote add リモート名 $git remote add xxxxxxx URL 複数リモートを持つことが出来るリモートリポジトリから情報を取得する方法
$git fetch リモート名 リモートリポジトリ → ローカルリポジトリ 情報習得 例: $git fetch origin 全てブランチ情報を表示させる $git branch -a remotes/origin/master 切り替え $git checkout remotes/origin/master 取得したデータをワークツリーに反映 $git merge origin/mastergit pull
リモートリポジトリ → ローカルリポジトリ → ワークツリー $git pull リモート名 ブランチ名 $git pull origin master 略せる ↓ $git pull 同じことをするには $gitpull = 両方の処理をpullなら一回で行える $git fetch origin master + $git merge origin master pullより fetch+mergeで運用するほうが無難 現在いるブランチがmasterの場合 $git branch *master git_study リモートリポジトリ $git pull origin git_study ↓ ローカルローカル remotes/origin/git_study ↓ ワークツリー *master ← masterブランチにマージされる git_study 選択しているブランチにマージされるリモートの情報を確認する方法
$git remote show $ git remote show リモート名 HEAD branchの確認など途中からプロジェクトに参加する(Gitクローンについて)
$git clone <リポジトリ名> リモートリポジトリ ↓$git clone ファイルと.git両方がコピーされる ローカル github コピーしたいリポジトリへ移動 code>https https://github.com/ユーザー名/リポジトリ名.git URLのコピーをする<リポジトリ名>にこれを使用する $git clone https://github~....基礎操作
git add
ワークツリー → ステージ $git add ファイル名 $git add ディレクトリ名 $git add .git commit
ステージ → ローカルリポジトリ $git commit $git commit -m "メッセージ" 簡潔に書くこと $git commit -v コミットの内容変更リモートリポジトリへ送信
ローカルリポジトリ → リモートリポジトリへ $git push リモート名 ブランチ名 master デフォルトのブランチ名 $git push origin master 初回 -u を使用すると $git push -u origin master 次回 origin master をpush する場合 $git push のみで可能になるgit log
変更履歴の確認 $git log $git log --oneline $git log -n コミット数git status
変更状況の確認をする方法 ワークツリー → ステージ 変更確認 ステージ → ローカルリポジトリ 変更確認git mv
ファイルの移動を記録ファイル名変更 $git mv oldファイル newファイルgid diff
変更内容の確認 ワークツリー → ステージ $git diff ステージ → ローカルリポジトリ $git diff --staged $git diff ファイル名git rm
ファイルの削除 $git rm ローカルリポジトリ ワークツリー 両方から削除される $git rm --chached ローカルリポジトリから削除 $git rm ファイル名 $git rm ディレクトリ名 例: $git rm xxxxx.html $git status Changes to be committed: deleted: xxxxx.html もし戻す場合 $git reset HEAD xxxxx.html reset: xxxxx.html $git checkout xxxxx.htmlgitにエイリアスを使用する
エイリアスを使用することで略して書くことが出来る gitのコマンド入力を楽にすることが出来る --global全体 --globalをつけない場合現在のリポジトリ内で使用出来る 推奨は--globalを使用すること $git config --global alias.ci commit $git config --global alias.st status $git config --global alias.br branch $git config --global alias.co checkout機密情報などを管理から外す方法
.gitignoreに記述する
index.html
/root
dir/
//.css
ファイルへの変更を取り消す方法
ステージ → ワークツリー ステージのじょうたいと同じにする $git checkout --ファイル名 $git checkout --ディレクトリ名 変更を取り消す $git checkout -- .ステージに追加した変更を取り消したい時
ローカルリポジトリ → ステージ 内容を上書きすることで変更を取り消す事が出来る HEAD 今いる最新のコミットの事 $git reset HEAD ファイル名 $git reset HEAD ディレクトリ名 全消し $git reset HEAD . ステージから変更を取り消す為 ワークツリーには影響を与えない直前のコミットをやり直す
リモートリポジトリにプッシュしたコミット対しては使用しないこと
$git commit --amend リモートリポジトリの確認 $git remote origin 詳細確認 $git remote -v fetch push
- 投稿日:2020-11-12T10:47:58+09:00
ローカルのgitブランチ名を変更する
今ローカルで使っているブランチ名を変えたい場合は、
git branch -m <新しいブランチ名>で変更できます。
- 投稿日:2020-11-12T09:23:51+09:00
git githubに挙げるまで 個人開発
1「git init」でgitを立ち上げ
2「git add -A」
3「git commit」
4「git remote add origin https://~~~~」
5 「git push -u origin main」ファイル変更
↓
ステージングエリア
↓
ローカルリポジトリ
↓
リモートリポジトリ
- 投稿日:2020-11-12T00:03:25+09:00
【バージョン管理のための】Gitコマンド【基本】
Gitコマンドのメモです。活用ください。
コマンド 実行結果 git init 現在フォルダにリポジトリを作成。ワークツリーとインデックスも用意 git add ファイル名 新規追加、変更ファイルを選択しステージする git commit ステージされた変更をコミット。 git status ワークツリー、インデックスの状況を確認 git diff ワークツリーとインデックスを比較し差分を表示 git log コミット履歴の確認