takafumi blog

日々の勉強メモ

Git

Git運用 その2 / リモートのリポジトリを一発でcheckout

環境 git version 1.8.3.1リモートにあるリポジトリを一発でローカルに持ってくる方法。例えば $ git branch -a * master remotes/origin/HEAD -> origin/master remotes/origin/master remotes/origin/feature/sample1 remotes/origin/feature/sample2 のと…

Git運用 その1 / pushしてもリモートリポジトリに反映されないとき

Git

環境 git version 1.8.3.1pushした際にリモートリポジトリに反映されない場合。 具体的には、以下のようなメッセージが表示されるとき。 $ git push No refs in common and none specified; doing nothing. Perhaps you should specify a branch such as 'ma…

Git入門 その21 / git checkout / ブランチの切り替え、リビジョンの切り替え

Git

環境 git version 1.8.3.1 ■ git checkout ▽ブランチを切り替える2つのブランチmaster,issueが存在するとき、masterからissueにブランチを切り替える $ git branch issue * master $ git checkout issue * issue master ▽リビジョンを切り替える $ git log -…

Git入門 その20 / git branch / ブランチを作成、確認

Git

環境 git version 1.8.3.1 ■ git branch ブランチを作成する。 実際にはbranchをどう運用するかが問題な気がする。 $ git branch <branchname> ローカルブランチを確認 「*」付が現在のbranch。 $ git branch issue * master リモートのブランチを確認 $ git branch -r o</branchname>…

Git入門 その19 / git add -p , git reset -p / 一部だけ変更を反映する & 一部だけ取り消す

Git

環境 git version 1.8.3.1 ■ git add -p 変更の一部だけステージングに乗せる。以下のように-pオプションを追加し、git addする。 $ git add -p hoge.txt diff --git a/hoge.txt b/hoge.txt index 67ea492..fa00e52 100644 --- a/hoge.txt +++ b/hoge.txt @@…

Git系まとめ

自分で何を書いたかわからなくなってきたのでまとめておく。■Git入門 その1 / 基本的な動作 その2 / git init その3 / git clone その4 / git add その5 / git commit その6 / git push その7 / git fetch その8 / git merge , git rebase その9 / git pull …

Git入門 その18 / git reset / コミットを取り消す

Git

環境 git version 1.8.3.1 ■ git reset 特定のリビジョンまでコミットを取り消す。 $ git reset <revision> --soft/hard 例えば、 $ git reset HEAD^ --soft であればHEADのコミットを取り消し、HEAD^の状態に戻されることになる。 オプション 説明 --soft ワークツリ</revision>…

Git入門 その17 / git commit --amend / コミットをやり直す、上書きする

Git

環境 git version 1.8.3.1 ■ git commit --amend 以前のコミットをやり直し、変更する事ができる。▽ 直前のコミットメッセージを修正 $ git commit --amend <|| を実行すると、登録されているgitのエディタが起動するので、コメントを編集して保存する。 ▽ …

Git入門 その16 / git remote

Git

環境 git version 1.8.3.1 ■ git remote リモートリポジトリの表示、設定を行う。 # リモートリポジトリの一覧を表示 $ git remote # 現在のpush,fetchのリモートリポジトリを表示 $ git remote -v # リモートリポジトリの追加 $ git add <remote-name> <url></url></remote-name>

Git入門 その15 / git log

Git

環境 git version 1.8.3.1 ■ git log コミットログを表示する。 # 全ログを表示 $ git log # 最近のログをn個まで表示 $ git log -n # 特定範囲のログを表示 $ git log 618dc77..7141f8e # 特定ファイルのログを確認 $ git log hoge.txt オプション 説明 --g…

Git入門 その14 / git diff

Git

環境 git version 1.8.3.1 ■ git diff gitに関わる差分を表示する。ローカルディレクトリ(ワークツリー)とステージングエリア(インデックス)の差分を表示。 ただし新規ファイルのdiffは取れない。 $ git diff ステージングエリア(インデックス)とHEADの差分…

Git入門 その13 / git status

Git

環境 git version 1.8.3.1 ■ git status ローカルリポジトリとステージングエリア、ローカルディレクトリの状態を表示する。 # ファイルを追加 $ echo hoge > hoge.txt $ git add hoge.txt # ファイルを変更 $ echo fugafuga > fuga.txt # 状態の確認 $ git …

Git入門 その12 / git commitのユーザー名を一時的に変更

Git

環境 git version 1.8.3.1git commitのユーザー名、emailは git config user.name git config user.emailが自動で使われるが、場合によっては別ユーザーをセットしたい場合もある。その場合は $ git commit --author='Hoge <hoge@email.addr>' -m 'Author Change Test' のよう</hoge@email.addr>…

Git入門 その11 / git push時にメールを送信する

Git

環境 git version 1.8.3.1git push時にメールを送信する。 /usr/share/git-core/contrib/hooks/post-receive-emailにあるファイルに何をどうすればいいか書いてあるので、これを見て設定すれば一通りOK.大体以下のような作業内容。実行権限は最初からある場…

Git入門 その10 / git config / 基本的な設定を行う

Git

環境 git version 1.8.3.1 ■ git config $ git config <location> (<action>) <key> <value> location --system システム上の全ユーザーに対して、設定値を保持する。設定ファイルは /etc/gitconfig --global 該当ユーザーに対して、設定値を保持する。設定ファイルは ~/.gitconfig --local</value></key></action></location>…

Git入門 その9 / git pull

Git

環境 git version 1.8.3.1 ■ git pull $ git pull <remote> 現在のブランチに対し、からfetch + mergeを行う。 $ git pull --rebase <remote> とするとfetch + rebaseとなる。イメージ +--------------------+ | リモートリポジトリ | +--------------------+ +-------------</remote></remote>…

Git入門 その8 / git merge , git rebase

Git

環境 git version 1.8.3.1 ■ git fetch $ git merge <branch> を現在のブランチにマージする。 $ git rebase <base> ブランチの基点となるコミットを、現在のブランチに移動する。merge,rebaseについては、詳細を別記。イメージ +--------------------+ | リモートリポジト</base></branch>…

Git入門 その7 / git fetch

Git

環境 git version 1.8.3.1 ■ git fetch $ git fetch <remote> <branch> リモートリポジトリの変更を、ローカルリポジトリに取得する。 を省略するとリモートリポジトリに存在する全ブランチの変更を取得する。イメージ +--------------------+ | リモートリポジトリ |-------</branch></remote>…

Git入門 その6 / git push

Git

環境 git version 1.8.3.1 ■ git push $ git push <remote> <branch> ローカルリポジトリにcommitされたオブジェクトを、リモートリポジトリのブランチにプッシュ(追加)する。 を省略すると、.gitにあるリポジトリ情報を元にリモートリポジトリが選択される。イメージ +-----</branch></remote>…

Git入門 その5 / git commit

Git

環境 git version 1.8.3.1 ■ git commit $ git commit -m "<message>" ローカルリポジトリにaddでステージングエリアに追加されたファイルをローカルリポジトリに反映する。イメージ +--------------------+ | リモートリポジトリ | +--------------------+ +--------</message>…

Git入門 その4 / git add

Git

環境 git version 1.8.3.1 ■ git add $ git add <file/directory> ローカルディレクトリと、ローカルリポジトリの中間的役割のステージングエリアに、ファイルやディレクトリを追加する。 またGitでは空ディレクトリをaddする事はできない事に注意。 当然ながらgit commitを</file/directory>…

Git入門 その3 / git clone

Git

環境 git version 1.8.3.1 ■ git clone $ git clone <repo> <direcotry> にあるリポジトリをローカルのに複製する。 を省略するとカレントディレクトリになる。 このとrきはinit --bareとちがい.gitは付けない。はローカルでもhttpでもsshでもかまわない。 例) # ローカル $ </direcotry></repo>…

Git入門 その2 / git init

Git

環境 git version 1.8.3.1 ■ git init $ git init <directory> を実行するとをgitリポジトリに変換する。 を指定しない場合は、カレントディレクトリとなる。個人で使う場合はこれでも問題ないが、基本的には共有リポジトリとして、以下のようにする。 $ git init --bar</directory>…

Git入門 その1 / 基本的な動作

Git

環境 git version 1.8.3.1今まで何となくでGitを使っていたので、きちんと整理してみる。■ 基本的なコマンド +--------------------+ +--->| リモートリポジトリ |-------+ | +--------------------+ | | | | push | fetch | | | | | v +-------------------…