顯示具有 git 標籤的文章。 顯示所有文章
顯示具有 git 標籤的文章。 顯示所有文章

2013年3月21日 星期四

git svn tag 轉換成真實的 tag

通常使用 git-svn 抓取 svn 的時候會下這樣的指令:

git svn clone https://remote.server/svn/ -s response

這樣可以把 svn 轉換成 git 匯入,但是 svn 的 tag 並沒有轉換成 git 的版本

接下來只要抓下的目錄下再輸入以下的指令就可以轉換成 git 使用的 tag

git for-each-ref refs/remotes/tags \
--shell --format="r=%(refname:short) t=\${r#tags/}" | \
while read e ; do eval "$e"; \
git tag -f $t refs/remotes/$r; \
git branch -d -r $r; \
done

相關文章:

git fetch 遇到的怪問題


在使用 git-svn-fetch 的時候 系統竟然吐出這樣的 log

fatal: Cannot open '.git/9YHRNPjFMp': Resource temporarily unavailable
hash-object -w --stdin-paths --no-filters: command returned error: 128

error closing pipe: Bad file descriptor at /usr/local/Cellar/git/1.8.2/libexec/git-core/git-svn line 0
error closing pipe: Bad file descriptor at /usr/local/Cellar/git/1.8.2/libexec/git-core/git-svn line 0

同樣的來源在不同的電腦上跑就可以正常 fetch ,後來發現是直接在虛擬碟 (nas) 上使用的關係

只要在實體硬碟上 fetch 就能正常運作了

相關文章:

2011年7月26日 星期二

call git extensions from msys

GitE='/C/Progra~1/GitExtensions/GitExtensions.exe'

$GitE browse 'pwd' &

2010年9月25日 星期六

把兩個遠端git合併成一個再push回去

會做這件事除了練習git remote之外,當做是一種技巧。

這次主要是把自己寫的vimrc和gvimrc和併成一個(成果合併在vimrc這個裡面了)

過程如下:
# 把主要的那個clone下來
git clone git@gist.github.com:171579.git my_vimrc
# 移到目標目錄
cd my_vimrc
# 新增一個新的遠端連接點並tag為gvimrc
git remote add gvimrc git@gist.github.com:171581.git
# 抓取gvimrc內容
git fetch
# 建一個新的branch命名為gvimrc並把遠端指到這個gvimrc
git checkout -b gvimrc gvimrc/master
# 換回master
git checkout master
# 合併gvimrc到master
git merge gvimrc
# 把合併的結果push出去,這會push到vimrc這個
git push

參考文件:

2010年9月20日 星期一

Mac OSX 下專用的 Git ignore file

設定家目錄下的.gitignore為通用設定檔
git config --global core.excludesfile ~/.gitignore

參考一些Xode的暫存檔更新後,內容如下

若有興趣的可以用git抓取原始碼

PS.原來gist也能用git回來或是push回去阿,實在是太有趣了 XD

2010年9月14日 星期二

用homebrew裝git+svn

預設定的git沒有git-svn的功能,在這篇文章查到方法
brew install git --with-svn

2009年4月18日 星期六

自動建立XCode專用的git ignore file

寫了一個簡單的建立git程式

工作流程如下:
  1. 呼叫Git init程式,建立基本git資料庫
  2. 產生.gitignore
  3. 產生.gitattributes
  4. 把兩個檔案加入git資料庫
  5. 加上初始註解