ターミナルを開く
git init でリポジトリ作成(.git ディレクトリが作成される)
ls -aで見れる ファイルと同じ階層に作成する
1 Gitの基本的なワークフロー
①ファイルの変更をステージングエリアへ追加する (git addコマンド) ②ローカルリポジトリにコミットする (git commitコマンド) ③リモートリポジトリにプッシュする (git pushコマンド)git add ファイル名
git commitコマンド後コミットメッセージ入力画面が開くので、iを押してから入力開始
終わったらesc→ :wqで保存
GitHubにプッシュするにはリポジトリを用意する必要があるので、ブラウザでGitHubを開き、+ボタンでNew repository(descriptionは入力なし Publicに設定後 Create GitHub
今回はすでに作成されているリポジトリに対して行うので、
…or push an existing repository from the command lineの
git remote add origin https://github.com/ユーザー名/リポジトリ名 が
GitをGitHubに登録するというコマンド
git push -u origin master で完了
2 変更をコミットしよう
1作業ずつ1コミットするのが原則
今ある変更をまとめてステージングエリアへ追加したい場合は git add . 変更にメッセージをつけてリポジトリに記録するのがコミット。 コミットすることで変更がリポジトリ内に時系列で記録される。わかりやすいコミットメッセージ
1行目 変更内容の要約 2行目 空行 3行目 変更した理由git commit -vで何の変更をしたか見れる
git logでコミットの履歴
3 色々な変更をコミットしよう
・新規作成 ・ファイルの削除 ・複数ファイルの変更削除したファイルをステージングエリアに追加するときは、git rm ファイル名
複数のファイルをステージングエリアに追加は git add .
4 現在の状況を確認しよう
git statusはGitリポジトリの今の状況を表示するコマンド(最新のgit commitした状態からの差分)5 変更履歴を確認しよう
git logコマンドでリポジトリにコミットされたログを確認する commit Auther Date その下にコミットメッセージが表示される このcommitを打ち消したい・このcommitの状態に自分のリポジトリを戻したい時などに、commitにハッシュ値を指定するgit logでよく使われるオプション
git log --oneline #一行で表示する git log -p #差分を表示する(pの後にファイル名を指定すると、そのファイルの変更履歴を見れる) git log -n 3 #最新の3つだけ表示 git log --oneline -n 3 #一行で表示して、最新の3つだけ表示6 変更差分を確認しよう
add, commitする前に git diffコマンド git diff #ステージとのファイル変更差分を確認 git diff HEAD #ステージとコミットの差分7 GitHubにプッシュしよう
git remote add origin リモートリポジトリのURL
#ローカルリポジトリをリモートリポジトリに登録
git push origin master
#ローカルリポジトリの内容をリモートリポジトリに送信する
masterはデフォルトのブランチ名 ブランチとは複数人で開発するときのもの
git push origin feature
#master以外のブランチ(この例はfeatureブランチ)へ送信
GitHubのYour profileからRepositoriesから選択後、URLをコピー
8 GitHubの画面を確認しよう
Your profile→RepositoriesからAboutの歯車でDescriptionを追加
Reposotoriesからファイルをクリックして、ファイルの数字をクリックするとURLが生成されるので、行をマークして共有したいときはそのようにする
rawはファイルの生ファイルを見れる(ファイルの中身をコピペしたいときなど)
blameはどの変更を誰がいつしたのか見れる
9 バージョン管理からファイルを外そう
.gitignoreファイルに指定することで、ファイルをGitの管理から外すことができる
(自動生成されるファイルや、パスワードが記載されているファイル)
.gitignoreファイルの書き方
\#から始まる行はコメント 指定したファイルを除外したい場合はそのままファイル名を書く (例: index.html ) プロジェクトのルートディレクトリを明示したい場合は / で始める (例:/root.html ) ディレクトリ以下を除外したいときはディレクトリ名/ と書く (例: dir/ )ファイルごとGitの管理から削除
.gitignoreファイルに書くのを忘れて間違ってコミットしたファイルをGitの管理から削除するには
git rm コマンド
ファイルを削除しただけではGitの管理から外れないので、ファイルを削除した後にgit rmコマンドでGitの管理からも外す
git rm [ファイル名] :ファイルも一緒に削除
git rm -r [ディレクトリ名] :ディレクトリも一緒に削除
あとでgit statusコマンドでGitの管理からも外れたか確認
git reset HEAD ファイル名 :もとに戻す
git reset HEADだけではローカルからは消えたままなので、ローカルにも戻したいときは
git checkout ファイル名 :ローカルにも戻す
ファイルを残してGitの管理からだけ削除
git rm --cashed [ファイル名]
(パスワードなどのファイルでローカルには残したいがGitの管理からだけ外したいとき)
※ .gitignoreに指定しないとGitから常に無視されるようにはならないので、.gitignoreに追記してGitの管理からずっと外れるようにするのを忘れないように!