LoginSignup
2
2

More than 5 years have passed since last update.

Gitの使い方(for me)

Last updated at Posted at 2015-07-03

概要

Git、プログラミングをしてたら聞いたことはあるけど使ったことないやという人が結構多いと思います。使いこなせると便利なのでぜひ使ってみてください。なによりGit使いこなせるとかっこいいですよね!(そういう問題ではない)

公式リファレンスが詳しくて便利です。これを一通り目を通せば問題ないはず。
以下はまあ、メモです。あとで分かりやすいようにまとめようと思います(暇があれば)

git初期設定

git config --global user.email "webmaster@xooms.jp"
git config --global user.name "webmaster"
git config --global color.ui auto
git config --global core.editor emacs

alias

git config --global alias.st status
git config --global alias.br branch
git config --global alias.ci commit

push設定

git pushをしたときに今いるブランチだけをリモートにプッシュする。リモートのブランチが現在のブランチと同じ時、プッシュする。

git config --global push.default=simple

branch

新規ブランチの作成

$ git br hoge#(ブランチ名)

ブランチの移動

$ git co hoge

新規作成して移動

$ git co -b hoge

ブランチの削除

$ git br -d hoge

リモートのブランチを確認

$ git br -a

リモートのブランチを削除

#ローカルのhogeブランチが削除済みだとして
$ git push origin :hoge

リモート

リモートレポジトリを加える

$ git remote add remote-name url

リネーム

$ git remote rename old-name new-name

リモートレポジトリのアドレス削除

$ git remote rm name

push

$ git push origin(remote-name) master:master

最後のmaster:mastermasterでもいい。
意味はlocal-branch:remote-branchである。
オプション-u(=--set-upstream)をつけると以降からgit pushだけで出来るが、ブランチを変える場合は注意。(push.default=simpleと設定しておくと安心)

commitの変更

直前のcommitを変更する。

git commit --amend

使用すると現在ステージしたものと直前のコミットを結合してくれる。コミットメッセージも変更できる。

commitを纏める

git rebaseを使用する。分かりにくいのでインタラクティブモード(-i)がおすすめ。

git rebase -i HEAD~2 #過去2つぶんのコミットを表示する。

そうするとエディタが立ち上がるから

pick 9a54fd4 commit message 1
pick 0d4a808 commit message 2

下のpickをsquashもしくはfixupに変更して保存。
squashの場合コミットメッセージを変更できる。(デフォルトでは2つのコミットメッセージが合わさる)
fixupの場合はコミットメッセージが消される。

commit messageを変更する

上記と同じようにrebaseして

pick 9a54fd4 commit message 1
pick 0d4a808 commit message 2

pickをeditもしくはrewordに変更して保存。
editの場合そのあとgit commit --amendをする必要がある。

commitを消去する

pickをdropに変更する。使う時は気をつけよう。

注意点

amendもrebaseもコミットを新しく作るものなのでリモートにpushしたコミットに対して使用してはらない!諦めて修正のコミットをpushすべし。

あぁ、このすばらしいリベース機能。しかし、残念ながら欠点もあります。その欠点はほんの一行でまとめることができます。
公開リポジトリにプッシュしたコミットをリベースしてはいけない
この指針に従っている限り、すべてはうまく進みます。もしこれを守らなければ、あなたは嫌われ者となり、友人や家族からも軽蔑されることになるでしょう。(git documentationより)

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2