FrontPage  Index  Search  Changes  Login

git

マージ

clone したリポジトリ元の変更をマージする

$ git remote add upstream git://github.com/xxxx/xxxx/git
$ git fetch upsteam
$ git merge upstream/master

プロキシ越えの設定

ssh key を作成する

$ ssh-keygen -t rsa -C "your_email@youremail.com"

~/.netrc

 machine  github.com
 login    your_login_id
 password your_password

~/.ssh/config

 Host github.com
   User git
   Port 443
   Hostname github.com
   IdentityFile ~/.ssh/id_rsa
   TCPKeepAlive yes
   IdentitiesOnly yes

~/.gitconfig

 [core]
   symlinks = false
   autocrlf = false# autocrlf=true=を書き換えた。
 [color]
 # diff = auto
 [http]
   sslVerify = false

タグ付け

git tag v0.0.1

タグを push する

git push --tags

or

git push origin tag name-of-tag

タグを指定してチェックアウト

現在作成されているタグの確認

$ git tag -l

タグがリンクしているハッシュ値を確認する

$ git rev-parse test

タグを指定してブランチを作成

$ git chekout -b < ブランチ名> < タグ名>

参考:http://wadslab.net/2008/11/git-memo/

ローカルのリモートリポジトリ情報を更新する

pull したくないけどリモートリポジトリの内容と比較したい場合など。

git remote update

gitk

文字コードを指定する

git config --global gui.encoding utf-8

git-daemon

起動・停止

起動

sv stop git-daemon

停止

sv start git-daemon

設定

/etc/sv/git-daemon/run

内容を変更

#!/bin/sh
exec 2>&1
echo 'git-daemon starting.'
exec chpst -ugitdaemon \
 /usr/lib/git-core/git-daemon --verbose --base-path=/var/repos --export-all --enable=receive-pack

--enable=receive-pack を指定すると権限に関係なく push できるようになる。

ログ

/var/log/git-daemon/

リポジトリの作成

git init --bare --shared=true
chown -R gitdaemon . #<= push するため

diff

git diff

作業ディレクトリに残っていて、ステージされていない変更を表示

git diff --cached

ステージされていて、次のコミットに使われる予定の変更を表示

rm

git rm --cached <file>...

アンステージする

.gitignore

  • 空行は無視。# で始まる行はコメント
  • 単純なファイル名リテラルは、任意のディレクトリの名前にマッチ
  • ディレクトリは末尾の / で表される
  • 行頭の ! はパターンの反転
Last modified:2011/07/10 20:19:21
Keyword(s):
References:[FrontPage]