git-svn 在ubuntu deepin(Linux debian系)下的安装与应用
Git是一款分布式版本管理工具,由linux的缔造者Linus Torvalds设计并实现,具体关于Git的介绍和使用方法可参见其官方站。
这里要说的是Git是如何做到既可以管理好本地代码又可以与已有的SVN中心库进行同步的。
1、安装
git-svn默认包含在Git的安装包中,不过在Ubuntu中,git-svn是作为一个独立的Package需要额外安装的
sudo apt-get install git-svn
安装完成后可以直接执行git svn
命令进行验证,但是要使用git-svn
命令时则需要配置PATH环境变量,如下——
环境变量配置:
将/usr/lib/git-core
配置到你的PATH环境变量中
2、检出
git-svn clone命令完成这个操作
git-svn clone http://192.168.18.80/Mar/trunk
检出分步操作:功能与上面步骤相同
建立本地目录, 比如假定是myproj
$mkdir myproj
$cd myproj
初始化并获取某个版本
$git svn init http://192.168.18.80/Mar/trunk
$git svn fetch -r xxxxx
获取某个版本,假如不指定版本,它就会根据svn记录一级一级获取
3、更新
git-svn rebase 注意这里用的是rebase,而不是update。
4、查看日志
git-svn log
加上-v选项,还可以提供每次commit操作涉及的相关文件的详细信息。
5、提交
将本地代码同步到Svn服务器。如果要同步到git服务器,用git命令
git-svn dcommit
这个命令会将你在本地使用git commit提交到本地代码库的所有更改逐一提交到svn库中。
加上-n选项,则该命令不会真正执行commit到svn的操作,而是会显示会有哪些本地变动将被commit到svn服务器。
git-svn dcommit 似乎不能单独提交某个本地版本的修改,而是一次批量提交所有与svn中心版本库的差异。
6、解决冲突
例如冲突文件为foo.c
使用git-svn rebase
获取svn服务器上的最新文件,导致冲突,
不过此时svn版本信息已经添加到本地git库中(通过git log可以查看)
打开foo.c,修改代码,解决冲突;
执行git rebase --continue
,git提示我:
You must edit all merge conflicts and then
mark them as resolved using git add
执行git add foo.c
,告知git已完成冲突解决;
再次执行git rebase --continue
,提示"Applying: git v1",此时"git v1"版本又一次成功加入本地版本库,你可通过git log查看;
执行git-svn dcommit
将foo.c的改动同步到svn中心库,到此算是完成一次冲突解决。
git比较智能,会提示你解决问题的方法,所以遇到问题时注意看提示文档。
7、设置忽略文件
要忽略某些文件, 需要首先执行如下命令:
git config --global core.excludesfile ~/.gitignore
然后编辑 vi ~/.gitignore.
例如: 需要忽略vim的临时文件,就写:
.*.swp
参考文档
http://techbase.kde.org/Development/Tutorials/Git/git-svn
http://flavio.castelli.name/howto_use_git_with_svn
git-svn 在ubuntu deepin(Linux debian系)下的安装与应用相关推荐
- Linux(Debian系)图形化安装惠普HP打印机驱动-亲测有效!新手友好
Linux端的各种驱动安装是相当麻烦的,并且伴随着许多"玄学"问题.惠普打印机驱动安装,在官网推荐了hplip,依赖终端,无图形化,成功率低且下载极慢.对于新手或某些机型,相当不友 ...
- ubuntu deepin等debian系Linux发行版安装docker-ce命令
- linux文件安装DBeaver,[deepin][linux][DBeaver]DBeaver社区版安装好没有图标
[deepin][linux][DBeaver]DBeaver社区版安装好没有图标 https://www.cnblogs.com/landv/p/13956926.html 修改 /usr/shar ...
- weblogic 64位 linux,weblogic在linux和window下的安装
weblogic在linux和window下的安装 Windows server2008 一直下一步没什么坑 centos6.5 使用rpm安装jdk8 安装jdl rpm -ivh jdk-8u19 ...
- Linux(CentOS6.5)下编译安装Nginx1.10.1
原文出自:http://www.cnblogs.com/comexchan/p/5815753.html Linux(CentOS6.5)下编译安装Nginx1.10.1 首先在特权账号(root)下 ...
- 深度linux系统和win7,国产操作系统Deepin Linux(深度系统)安装体验-深度win7
Deepin Linux界面精美,新手易于操作,内置软件丰富,Deepin拥有自主设计的特色软件:深度软件中心.深度截图.深度音乐播放器和深度影音,全部使用自主的DeepinUI,Deepin是中国最 ...
- macos安装python3.6_在CentOS 7/Ubuntu 16.04/Debian 9/macOS上安装Python 3.6的方法
本文介绍在CentOS 7/Ubuntu 16.04/Debian 9/macOS操作系统上安装Python 3.6的方法,包括使用Python 3.6创建virtualenv,目前大多数Linux发 ...
- Xp下的程序编译成linux,Windows XP下硬盘安装Linux系统
作为一个Linux新手,第一次安装Linux系统,经过几个小时摸索,终于搞清楚在Windows XP系统下硬盘安装Linux系统的方法,跟大家共享. 第一步:在Window系统下必须存在两个分区(不妨 ...
- ubuntu系统python下载_ubuntu 下python安装及hello world
//@desn:ubuntu 下python安装及hello world //@desn:码字不宜,转载请注明出处 //@author:张慧源 //@date:2018/08/17 环境准备:ubun ...
最新文章
- BP算法是从天上掉下来的吗?
- 现代软件工程 结对/团队作业 - 汉字的 2048 + 俄罗斯方块
- 亲戚(信息学奥赛一本通-T1346)
- Exception in thread “main“ java.lang.IllegalStateException: Failed to read 问题解决
- [转载] Flask+Celery+Redis简单操作
- python主流编程语言_目前主流的编程语言有哪些?
- 181027每日一句
- 简单使用WPE进行网页嗅探
- 破解校园数字安全难点,联想推出智慧教育安全体系
- 【安全热点】阿里巴巴月饼门,观点两极化,孰对孰错?
- Prolog:list处理(复习笔记)
- 深度学习 花书中的概念——百晓生知识处理库自动抽取
- 删除 文件夹出现0x80070091错误提示目录不是空的.txt
- 如何将数据存入mysql_怎样将数据存入mysql数据库
- Tp5自动加载创建admin和index文件夹
- SOLIDWORKS如何在工程图中直接更换图纸格式
- 使用lsof命令恢复已删除文件(正在使用的文件)
- Linux-hexdump命令调试event驱动—详解(13)
- 位图文件, JPG格式,PNG格式
- 小牛叔讲Python第8章:集合大家一起的快乐
热门文章
- AI理论知识基础(19)-线性变换(1)
- rust(34)-Rust and WebAssembly(2)
- C指针原理(8)-C内嵌汇编
- 21-5-22校赛G 自行车调度
- 特征对齐的旋转目标检测:Align Deep Features for Oriented Object Detection
- 【机器学习】从Few-shot Learning再次认识机器学习
- 【小白学PyTorch】16.TF2读取图片的方法
- 【经验分享】鹅厂机器学习岗暑期实习面经总结
- 技术实践 | 网易云信在融合通信场景下的探索和实践之 RTMPGateway 服务架构
- LeetCode_226.翻转二叉树