源码管理工具(SCM)之备忘

简介: 首先声明,本人主张多使用命令行之工具(Command Line)代替图形界面(GUI)。个中优点,熟悉软件业务操作的人自然懂得。其次,本人希望多个源码工具共同混合使用,包括 Git、Hg(Mercurial)、SVN(Subversion),不必定于一尊。

首先声明,本人主张多使用命令行之工具(Command Line)代替图形界面(GUI)。个中优点,熟悉软件业务操作的人自然懂得。其次,本人希望多个源码工具共同混合使用,包括 Git、Hg(Mercurial)、SVN(Subversion),不必定于一尊。实际上,除却分布式与集中这两种显著的管理思想差别之外,其他用法可以说都大同小异。前者去中心化以 Git、Hg 为代表,后者集中化的思想则以 SVN 为最。

SVN 篇

  • 命令行的工具下载,如 Slik SVN:http://www.sliksvn.com/en/download
  • 如果没设置系统环境变量,设置一下:PATH=C:\Users\Frank\dev\svn
  • 检出项目:svn checkout https://naturaljs.googlecode.com/svn/trunk 新建目录名 --username 用户名
  • Checkout 之后,自动建立配置参数:C:\Users\Frank\AppData\Roaming\Subversion。用文本编辑器打开 config 文件,里面有详尽丰富的注释。注释符号为 “#”。
  • 常用命令 svn checkout 检出; svn st 状态;svn add 〈FileName〉 添加文件;svn del〈FileName〉 删除文件;svn ci 提交并发送的服务器;svn rm <folder> 删除目录;svn ci -m "logMsg"    写日志并提交;svn update -r ReNo 切换到某个版本;
  • 提交须配置一下究竟哪个文本编辑器来写日志。编辑 config 文件,加入 editor-cmd = notepad.exe,或者你喜欢的编辑器完全路径。如果路径包含空格须用“双引号”表示这是个字符串。
  • 第一次输入账号和密码之后,就会自动保存起来。
  • SVN 支持文件类型,可以把 SVN 服务器弄成一个静态服务器用。
  • 如果不想每次提交文件都指明 content type,可以用自动属性识别。编辑 config 文件,先令 enable-auto-props = yes,然后在最后加入:
    *.png = svn:mime-type=image/png
    *.jpg = svn:mime-type=image/jpeg
    *.gif = svn:mime-type=image/gif
    *.css   = svn:mime-type=text/css
    *.js    = svn:mime-type=application/x-javascript
    *.htm   = svn:mime-type=text/html
    *.html  = svn:mime-type=text/html
    *.txt   = svn:mime-type=text/plain
  • 如果提示已过时,执行 svn update,删除或继续提交。
  • 冲突时要协商,协商好之后告诉 SVN 协商结果:svn resolve --accept working test.txt。另详见:http://bbs.ajaxjs.com/forum.php?mod=viewthread&tid=3660
  • 加参数指定 Revision,如 http://xxx/svn/javaCode/mmc/WebRoot/goods/goods.inc?p=570。
  • 忽略某个文件夹  (要求 文件夹 尚未 加入版本控制)
    svn propset svn:ignore dirname . (注意最后面的 . 一点,还有不用把目录加入到版本管理)

推荐一个 SVN 免费的私有空间:http://code.taobao.org/

分支与合并

所谓“分支开发”,就是将主干(trunk)保持在稳定可运作的版本(虽然本来就该这么做),在开发任何新功能时都另建新分支(branch),开发到一段落之后再合并回主干。能支援这样的开发模式,是因为Hg或Git这些分布式版本控制系统做开分支、合并等动作的额外开销都很低。

目录
相关文章
|
7月前
|
数据采集 机器学习/深度学习 算法
别急着上算法,咱先把数据整明白:大数据分析的5个基本步骤,你都搞对了吗?
别急着上算法,咱先把数据整明白:大数据分析的5个基本步骤,你都搞对了吗?
428 4
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
《打破知识壁垒:解锁自然语言处理模型跨领域知识图谱关联与推理密码》
在人工智能快速发展的背景下,自然语言处理(NLP)技术成为各行业智能化变革的关键。知识图谱作为结构化的语义知识库,通过“实体-关系-实体”三元组描绘现实世界的概念及其关系,为NLP模型提供背景知识和推理依据。然而,随着多领域知识的爆发式增长,如何实现不同领域知识图谱的有效关联与推理成为亟待解决的问题。本文探讨了理解领域特性、实体对齐、关系映射与融合及深度学习推理模型构建等关键步骤,旨在打破领域间知识壁垒,提升NLP技术的智能化水平,推动其在智能问答、推荐、决策辅助等领域的广泛应用。
358 1
|
11月前
|
并行计算 算法 C++
《探索C++在3D重建中的算法与技术要点》
3D重建是计算机视觉的重要技术,广泛应用于多个行业。C++因其高效性和对底层硬件的良好控制,成为实现3D重建算法的首选语言。本文介绍了多视图立体视觉、立体匹配、点云处理与重建、网格重建与优化、纹理映射及CUDA加速等关键技术,详细阐述了各算法的原理和C++实现要点。
264 18
|
网络协议 物联网 网络性能优化
物联网江湖风云变幻!MQTT CoAP RESTful/HTTP XMPP四大门派谁主沉浮?
【9月更文挑战第3天】物联网(IoT)的兴起催生了多种通信协议,如MQTT、CoAP、RESTful/HTTP和XMPP,各自适用于不同场景。本文将对比这些协议的特点、优缺点,并提供示例代码。MQTT轻量级且支持QoS,适合大规模部署;CoAP基于UDP,适用于低功耗网络;RESTful/HTTP易于集成但不适合资源受限设备;XMPP支持双向通信,适合复杂交互应用。通过本文,开发者可更好地选择合适的物联网通信协议。
266 2
|
运维 监控 Ubuntu
在Linux中,如何查看系统日志文件?
在Linux中,如何查看系统日志文件?
|
机器学习/深度学习 人工智能 数据可视化
【2020-2024持续更新】Echo State Network和储层计算论文汇总!包括经典ESN、DeepESN、组合ESN和综述!
本文汇总了2020至2024年间关于Echo State Network(ESN)和储层计算的研究成果,包括综述、不同模型分类(经典ESN、DeepESN、组合ESN)、开源论文、储层计算相关研究以及ESN在各个领域的应用情况。
278 0
|
传感器 物联网 数据安全/隐私保护
智慧城市中的环境监测:物联网的角色
【6月更文挑战第6天】智慧城市中的物联网技术在环境监测中发挥关键作用,如路灯上的传感器实时监测空气质量和气候,智能垃圾桶自动检测垃圾容量。物联网使环境监测更全面、精准,但需解决数据安全、设备可靠性和标准统一等问题。随着科技发展,未来智慧城市将因物联网变得更加绿色宜居,环境监测将与城市各领域深度融合。我们期待科技带来的惊喜变革,为建设美好城市努力。
294 2
|
数据库 NoSQL MongoDB
重磅 | 阿里云与MongoDB达成战略合作,成为全球唯一提供最新版MongoDB的云厂商
10月31日,阿里云与开源数据库软件公司MongoDB达成战略合作协议,根据协议,阿里云将成为全球唯一可提供最新的MongoDB服务的云厂商,最新版MongoDB 4.2将于11月上线。
3637 0
|
XML 存储 缓存
Shiro - Spring + Jedis(会话、缓存、自动登录)整合篇(上)
Shiro - Spring + Jedis(会话、缓存、自动登录)整合篇(上)
453 0
Shiro - Spring + Jedis(会话、缓存、自动登录)整合篇(上)