GitHub(ターミナル操作手順)
個人的なメモとしてGitHubの登録からターミナルでのコミット、プッシュの流れを簡単にまとめてみました。少々雑なところもありますが、お役に立てればと思います。
手順
- GitHubアカウント作成
- 通信の暗号化(SSH鍵の設定)
- リポジトリの作成
- GitHubへのpush
1, 2に関しては下記のサイト通りなので割愛します。大変お世話になったリンク先を載せておきます。
GitHubアカウント作成
SSH鍵を作成、登録
commit → puchの流れ
##手順0 ユーザー設定 $ git config --global user.name "ユーザ名” $ git config --global user.email メールアドレス
こちらは一度設定してしまえば次回からは設定する必要ありません。
手順1 リポジトリ作成
リポジトリを作成するディレクトリに移動
$ cd ~/使用するプロジェクトのフォルダ
README.mdの作成
$ touch README.md
- README.md(リポジトリにアップしたソースコードの説明などを書くファイル)
- 拡張子(.md)はマークダウン記述(軽量マークアップ言語)
リポジトリ作成
$ git init
README.mdファイルをローカル上のステージングエリアに上げる
$ git add README.md
手順2 ローカルリポジトリにコミット
コミット
$ git add .
$ git commit -m “first commit”
- ステージングエリアへ登録(コミット待ちになる)
- ローカルリポジトリへコミット
確認
$ git log
コミットしたログの確認を行えます。
間違えてコミットしてしまった場合
削除
$ git reset --hard HEAD^
$ git reset --hard HEAD^^
$ git reset --hard HEAD^^^
- 1つ前のコミット取り消し
- 2つ前のコミット取り消し
- 3つ前のコミット取り消し
上書き
$ git commit --amend
直前のコミットに上書きをします。
手順3 GitHubにプッシュ
URL指定
$ git remote add origin プッシュするURL
プッシュ
$ git push -u origin master
これで完了です。GitHubに戻って確認してみましょう!
追加したURLを削除したいとき
$ git remote rm origin
間違えても削除を行えるのでプッシュし直せます。
プッシュ時のエラーの対応方法
私が遭遇した下記のエラーの対応方法を記述します。
failed to push some refs to ‘URL’
方法1 fetchしてmergeする
git fetch
git merge origin/master
- リモートの変更を取ってくる
- マージする
方法2 fetchしてrebaseする(リモートの変更の後に自分の変更を持ってくる )
git fetch
git rebase origin/master
- リモートの変更を取ってくる
- 自分の変更を持ってくる
※ 方法3 pullする
git pull
こちらは慣れないうちは使わないほうがいいみたいです。
ちなみにそれぞれこのような意味を持ちます。
git push | git fetch | git merge |
---|---|---|
アップロード | ダウンロード | 2つのブランチを合流 |
___
最後にこちらのまとめの元となったリンク先の一覧を載せておきます。
参考URL
リポジトリ作成、README.md:http://mae.chab.in/archives/2306
コミット、プッシュ:http://qiita.com/iron-breaker/items/6da9e0f1af0b4c2c1cfa
コミット削除:http://qiita.com/shuntaro_tamura/items/06281261d893acf049ed
push時にfailed to push some refs to ‘URL’の対処法:https://www.softel.co.jp/blogs/tech/archives/3569
その他
Markdown:https://ja.wikipedia.org/wiki/Markdown
pullを使うべきでない3つの理由:http://dqn.sakusakutto.jp/2012/11/git_pull.html
pullとfetch+mergeの違い:http://qiita.com/Teloo/items/95a860ae276b49edb040#
___
GitHubを始めたばかりの初心者なので、何か間違えているところがありましたらご指摘頂けると幸いです。
最後まで見て下さりありがとうございました。