git

git の基本操作

そのディレクトリで始めるとき

git init

ファイル .gitignore の中に無視するファイルディレクトリ群を書いておくと無視されるようだ。

その後 . でカレントディレクトリ以下全部追加してしまうのかなー。ひとまず。

git add .
git status

で確認してよければ

git commit -m 'komittomesse-ji'

ミスった場合

git rm なんちゃら

して

git commit --amend

origin を遠隔のどっかに追加する

git remote add origin git@github.com/nanigashi/NancharaKancharaProject.git

origin に master を押し込む。英語の自然な語順の通り。

git push origin master

リモートの origin に手元の topic-branch-a を押し込みたいときは

git push origin topic-branch-a

とすればよい。リモートにそういうブランチができてそこに push される。

ファイル filename を追加。更新するときも add

git add filename

コメントつけながらコミット

git commit -m 'your own comment'

削除

git rm filename

日々の更新作業は

add して commit して push

git add filename
git commit -m 'your own comment'
git push origin master

rebase: 本家から clone して clone しまくったとき

git rebase じゃ! rebase の仕業じゃ!!

git 自分が fork したり clone しまくったあと本家も変わったのをひっつけるのは rebase

merge が conflict したとき

git rebase origin/master

rebase できなかったら

rebase しようとしたら

cannot rebase: you have untagged changes

となった。 例えば Gemfile.lock がだめと言われた。

git reset HEAD Gemfile.lock

?

git stash pop

?

git stash

あと忘れた

ssh だけで手軽に git レポジトリを

ssh でお手軽自分だけレポジトリを作る。 ssh でログインできればいい。

手元で git init して始める。

ssh で入れるリモートサーバを example.net とする。そこに入って、

mkdir ~/path/to/hogehoge.git
cd hogehoge.git
git init --bare
exit

としてくれば空っぽレポジトリができた状態。ここに push すればいい。

では手元の git プロジェクトを push してみよう。

git remote add origin ssh://example.net/~/path/to/hogehoge.git

終わり。 これは手軽だ。

また公開したくなったら git-daemon で git:// ができるようにしよう。

remote は複数登録できる

普通に URL で指定すればそこをpull/push対象にしてくれる。 URLを毎回打つのは大変ということであれば

git remote add namae [URL]

と URL を指定すれば namae で参照できる。

git remote

すれば現在登録されている remote repositories が出る。

git remote -v

で冗長表示

設定自体は .git/configにかいてありますん。

origin というのはレポジトリのデフォルトの名前。

gitolite

gitolite では gitolite-admin.git の conf/gitolite.conf に repo を追加して push するとそれだけ空っぽのレポジトリを作ってくれる。 後はそれを

git remote add origin git@server.example.net:project-name.git

して普通に pull/push などをすればOK。

未分類

git cherry-pick

git add -u

git branch --track local_branch remote_branch

更新日時:2012/10/27 00:55:07
キーワード:
参照:[計算機関連]