SVN中使用Git簡明介紹
在學習SVN的過程中,你可能會遇到SVN中使用Git問題,本節就主要講解一下SVN中使用Git問題,包括開始和初始化代碼庫等內容,希望通過本節的學習大家更夠對SVN中使用Git問題有更加深刻的認識。
如果正在使用svn,打算換到git,又暫時不想放棄已有的svn代碼庫,可以選擇git-svn。說一說我自己從svn到git的經驗吧。
開始
安裝最新版本的git,從git1.5.3以后支持git-svn,git和svn的配合就要借助這個功能。
安裝完畢后要做一些簡單的配置。最直接的做法就是創建修改~/.gitconfig。下面是我的.gitconfig
- [user]
- name=RobinLu
- email=---@gmail.com
- [color]
- diff=auto
- status=auto
- branch=auto
- [alias]
- st=status
- rb=svnrebase
- ci=commit-a
- co=checkout[user]
部分標示出使用者的身份,你提交的代碼會自動引用這一身份信息。[color]設置命令輸出的顏色。[alias]部分可以簡化一些常用命令,比如在這里將gitstatus簡化為gitst。
初始化代碼庫
SVN中使用Git時要初始化代碼庫。首先用git-svn來初始化本地的代碼庫(repository)
gitsvn
clone-s
svn-repository-urlsvn-repository-url部分使用svn代碼庫的url。如果要從trunk目錄或者某個branch目錄里checkout,要把-s換成-T、-b等選項。具體參看mangit-svn。這個命令時間比較長,因為需要同步所有的提交歷史,還好只此一次,以后不會這么慢了。做完這一步,在本地就有了一個完整的代碼庫,包括所有commit的歷史和log,已經可以開始用它來進行開發工作了。
不過,在開始開發之前,最好先做一次垃圾搜集:gitgc
它對代碼庫的信息進行垃圾搜集和壓縮,最明顯的作用就是減小磁盤占用空間。第一次做效果尤其明顯。
你可以檢查一下代碼庫的狀態:
gitstatus現在應該在一個叫”master”的分支(branch)上。
用這個命令來顯示出所有的分支(branch):gitbranch-a
master前有一個*號,代表你現在所處的分支,另外還有一個分支叫trunk,它是一個遠程分支(remotebranch),對應的是遠程svn代碼庫。master實際上是trunk的一個本地分支。
接下來,需要配置忽略文件,讓git忽略一些目錄中不希望加入代碼庫的文件,類似svnpropsetsvn:ignore。全局有效的忽略文件列表可以添加在./.git/info/exclude文件中。比如我需要忽略所有vi產生的swp文件:
.*.swp對于和目錄有關的忽略文件設置可以在該目錄下創建.gitignore,然后加入需要忽略的內容,比如我希望忽略根目錄下的log,tmp等目錄,可以直接在根目錄下的.gitignore中加入:log,tmp
請期待下節SVN中使用Git問題介紹。
【編輯推薦】
- Git-SVN配合使用之簡明教程
- VS2008+SVN插件使用前沿報道
- 深度剖析:Subversion服務器安裝配置
- MyEclipse中SVN安裝配置新手指南
- Http訪問SVN服務器的配置方法專家指導