svn git协同管理

项目开发过程中总有一些奇奇怪怪的需求出现。

我们的项目管理是使用SVN的,用SVN是历史原因,无法整个项目向Git切换。由于我需要管理SVN,做一些代码合并工作。每次合并都会遇到SVN代码需要对比查看,检查代码。经常也需要自己对他们的代码做一些优化。中间优化版本也无法提交,优化多了也可能导致代码出错,感觉整个人都不好了。

所以现在使用SVN+Git协同工作的方式,感觉整个人都好多了。

方法:

先在svn目录中增加ignore属性

举例:svn/trunk/example目录

cd svn/trunk/example
svn propedit svn:ignore ./
打开了edit界面
.git
.gitignore
保存退出

通过编辑svn的svn:ginore属性,让其忽略git管理所用的目录

在svn/trunk/example目录中,创建git仓

cd svn/trunk/example
git init
git co -b svn
git add *
git commit -m "Git init, the save version as svn-rxxxx"

这样,就可以有一个本地git存在了。

Git仓也可以有远程仓,远程仓的创建命令如下:

git init --bare svn-repo
pushd svn-repos
cd hooks
cp post-update.simple post-update
popd

使用ssh协议,将svn项目托管到远程仓上,

cd svn/trunk/example
git remote add origin [email protected]:~/svn-repo
git push origin svn:svn

由于使用了ssh协议,在此假定ssh目的服务器的用户名为git,服务器名为git-server(也可以用ip)。

通过以上操作,example已经同时托管在了svn和git上。这样就可以使SVN只做稳定版本存放服务器了。

时间: 2024-11-07 10:17:30

svn git协同管理的相关文章

git-svn:通过git来管理svn代码

简介 svn和git都是常用的版本管理软件,但是git无论在理念或是功能上都比svn更为先进.但是有的公司是以svn作为中央仓库,这时git与svn代码的同步就可以通过 git-svn这个软件进行,从而用git管理svn代码.最后的效果相当于把svn仓库当作git的一个remote(远程仓库),而你本地的代码都是通过git来管理,只有push到svn时才会把你本地的commit同步到svn. 从svn克隆 首先看一看用于测试的svn项目结构,svn的仓库路径是file:///d/Projects

Windows环境下通过Git来管理自己的Android代码

前面已经介绍了在Windows下使用git工具来下载Android的源码,Windows环境下通过Git得到Android源代码,这里记录我使用git工具来管理我自己的代码,git是一种分布式的项目管理工具而CVS及SVN都是集中式的版本控制系统集中式版本控制系统最大的毛病就是必须联网才能工作,分布式版本控制系统根本没有"中央服务器",每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上,分布式和集中式通过以下两张图会清楚点 Window

IOS Git源代码管理工具

1.新建一个"本地仓库" $ git init 2.配置仓库 >告诉git你是谁 git config user.name lnj >告诉git怎么联系你 git config user.email [email protected] >上面一种配置方式是一次性的配置, 会配置到被管理文件的.git文件夹下 >下面一种配置方式是一劳永逸的方式: git config --global user.name lmj git config --global user.

Git 源代码管理工具

Git 源代码管理工具 Git基本信息 Git :Git是一个“分布式”的版本控制工具 Git的作者是Linux之父 Linus Benedict Torvolds,当初开发Git仅仅是为了辅助Linux内核的开发 Git在国外已经很普及,在国内也慢慢开始普及 Git与SVN的区别 结构:SVN是“集中式”的版本控制,Git是“分布式”的版本控制 速度:(多数情况下) Git速度高于SVN的速度 分支:SVN的分支比较笨拙,可Git可以轻松的创建无限个分支 安全:Git的数据备份比SVN更安全,

2016/01/13开始学习git:管理修改、撤销修改

一.管理修改 第一次修改readme.txt       : 增加一行Git tracks changes. 添加readme.txt                :       git add readme.txt 第二次修改readme.txt        : 修改Git tracks changes.为Git tracks changes of files. 提交readme.txt                :     git commit -m "git tracks chan

GIt分支管理策略

大纲: 1.前言 2.创建分支 3.切换分支 4.合并分支(快速合并) 5.删除分支 6.分支合并冲突 7.合并分支(普通合并) 8.分支管理策略 9.团队多人开发协作 10.总结 注,测试机 CentOS 5.5 x86_64,Git 服务器版本:git version 1.8.2.1,客户端版本:git version 1.9.2.msysgit.0.所有软件请到这里下载:http://msysgit.github.io/. 1.前言 在上一篇博客中我们主要讲解了Git 远程仓库,相信大家对

Git代码管理工具

Git代码管理工具 Git 是分布式的源代码管理工具,这点区别于svn -让源代码可以被追溯,主要是记录了每次的更新了什么,如果新版本不想用,那么则可以退回之前的版本 -Git 是Linux之父当年为了维护管理Linux的源代码写的一个工具 -在没有网络的情况下也可以提交代码(提交到本地),进行记录,有网络时再提交到服务器 Git安装 下载相应的版本并安装,记住你选择的安装目录 安装完成之后,打开dos窗口,输入 git --version   检测是否安装成功以及Git的版本 C:\Users

svn,git的对比以及常用命令上篇

之前定制Rom,需要下载android源码,修改系统应用.android源码管理使用repo+git,下载速度快的吓人.(直接下载的话,被墙了当然慢,请忽略这个因素).感觉git更适合大型项目管理.项目经验不是非常多,个人无论大小项目,自己选择的话还是喜欢用git. 个人总结的git优点 1.分支管理非常方便 2.回退,查看历史更加方便,支持命令更多 3.速度更快 4.可以离线提交到本地库,可以离线查看log 5.... 下面参照大牛的介绍,来具体看一下git和svn的不同 参考http://s

Jenkins+Maven+Svn/Git

Jenkins+Maven+SVN/Git——转载: Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面看看我们是如何几分钟就快速搭建一个持续集成环境吧. 假设我们目前已经有2个maven项目:entities(JAVA类库),web(Web应用,依赖entities). 一.安装Jenkins 地址http://mirrors.jenkins-ci.org/下载适合的Jenkins版本. 把得到的war包直接扔到tomcat下,启动tomcat,Jenk