Git SVN获取更新的脚本
上篇Blog里介绍了Git SVN的工作流程,如果在一个分支工作时,想取得SVN上的更新,那么可以使用下面这个脚本,只要一个命令就能搞定了。
br=`git branch|grep \*|cut -c3-` echo "Branch:$br" echo "" echo "--- Stashing ---" git stash if [ $? -ne 0 ]; then echo "--- Stashing failed. ---" exit 127 fi echo "" echo "--- Checking out master ---" git checkout master echo "" echo "--- Getting update from SVN ---" git svn rebase echo "" echo "--- Checking out $br ---" git checkout $br echo "" echo "--- Getting update from master ---" git rebase master echo "" echo "--- Restore working space ---" git stash pop echo "" echo "--- Done. ---"
我的Git SVN工作流程
前一篇博文谈到开始使用Git做为SVN的客户端。网上已经有很多文章介绍Git-SVN的用法,这里介绍一下我的工作流程。下面的蓝色文字表示是在主分支(master)下完成的命令,而棕色文字是表示在工作分支完成的命令。
首先,从SVN (Subversion) 签出一个模块并建立工作分支:
$git svn[......]
开始试用Git作为SVN客户端
由于公司的SVN服务器在国外,由于一些众所周知和众所不知的原因,与这台服务器交互时不时会有些问题,头疼了有一年多了。最近发现Git居然提供了与SVN服务器交互的命令,可以把Git变成一个SVN的客户端,这可把我乐坏了。其实原先是研究过一下它的老对手Mercurial的,不过搜到关于它和SVN的资料比[......]
git-svn rebase的出错信息
用Git从SVN容器取下工程后,做rebase的时候出现下列信息:
$ git svn rebase W: Refspec glob conflict (ref: refs/remotes/trunk): expected path: project/branches/trunk real path: project/trunk Continuing ahead with Navigator Product/trunk Current branch master is up to date.
虽然不影响操作,但有碍观瞻。解决办法是打开项目目录下的.git/config文件,会发现下面几行:
bc8071e50cc909f83b4341f26[......]