https://gist.github.com/uupaa/4e179b1f720d564e2d3e3f3ec4573e2f
https://github.com/USER-NAME/REPOSITORY/compare/A...B で A - B 間の diff を取れる
#
+ issues-id 付きで commit する
$ git commit -m "#3 fixed"
#issues-id
を付け忘れてコミットした時は、issues に @
+ hash を付けてコメントすると、ハッシュの示すコミットにリンクが張られる
@hash
$ git push -f origin HEAD^:master
でリモートのpushを取り消し、
$ git reset --soft HEAD^
で、ローカルの変更を取り消すと、コミットとpushをやり直しできます。
git pull は現在のブランチ(masterにいる場合はmasterに)にリモートブランチを取り込みます。
リモートブランチをローカルに取得したいだけの場合は、git pull ではなく、git branch を行います。
$ git branch remote-branch origin/remote-branch
または、 git checkout -b remote-branch origin/remote-branch とすると、同時にチェックアウトもしてくれます。
$ git checkout -b remote-branch origin/remote-branch
// git diff --name-status [ブランチ1] [ブランチ2]
$ git diff --name-status master develop
D demos/icons/base.css
A demos/mydemo/Hoge.js
M demos/mydemo/manifest.json
:
:
// ファイルの差分を表示する, ブランチをまたがった差分表示も可能
// git diff [ブランチ:]ファイルパス [ブランチ:]ファイルパス
$ git diff master:Hoge.js develop:Hoge.js
$ git diff HEAD
$ git diff HEAD src/path
git commit してしまったが、ファイルを入れ忘れた事に気がついたので、git commit をやり直したい
$ git commit --amend
このコマンドを実行すると、直前のcommitが無効化され、新しいコミットが作成されます(新しいコミットは新しい hash 値を持ちます)。
最後のコミット(02abdb...)そのものを取り消すには、git reset --soft HEAD^ を実行します。 「git reset --soft」は、ワークディレクトリの内容(追加したファイルや修正したファイル)はそのままでコミットだけを取り消したい場合に使用します。
$ git log
commit 02abdb...
commit 34efd0...
$ git reset --soft HEAD^
実行後に git log を見てみると 02abdb が消えています
git reset --hard を行うと、ワークディレクトリの内容も取り消されます(追加/修正したファイルが消えます)
git branch
でローカルブランチ。git branch -a
でリモートブランチも含めて表示します。
$ git branch -a
* master
develop
origin/master
origin/develop
不要になったブランチを削除します。
$ git branch -a
* master
develop
origin/master
origin/develop
の状態で、git branch -d develop
とするとローカルのdevelopブランチが消えます。
$ git branch -d develop
Deleted branch develop (was .....).
さらに、git push origin :develop
とすると、リモートのdevelopブランチも消えます。ブランチ名の前に:
が必要です。
$ git push origin :develop
developブランチにいる状態で、developブランチを削除しようとするとエラーになります。
$ git branch
* develop
$ git branch -d develop
error: Cannot delete the branch 'develop' which you are currently on.
git tag -a v1.0.0 -m "version 1.0.0"
git push --tags
タグをつけると、GitHub Release のページに乗る
ローカルで削除して、リモートにpushすると消える
git tag -d TAGNAME
git push origin :TAGNAME