针对 SVN 使用者的 Git 介绍

mosdeo

2020/10/12 发布于 编程 分类

文字内容
1. 针对 SVN 使用者的 Git 介绍 林高远 最后修改日期 2018/12/26
2. 大纲 概念 ● ● ● ● Git 不等于 Github SVN 的 commit == Git 的 add + commit + push SVN 的 update == Git 的 pull 为何 Git 冲突好处理? 转移 ● 从 Subversion 迁移到 Git
3. Git 不等于 Github ≠
4. Git 不等于 Github ≠ 要是前一张不懂,这一张你应该懂了
5. Git 不等于 Github 版本控制 Git SVN RAR 内部自建 内部自建
6. Git 不等于 Github 服务提供商 版本控制 技术线 Git SVN RAR 内部自建 内部自建
7. SVN 的 commit == Git 的 add + commit + push ● SVN 的 commit ○ 有 commit message ○ 提交到中央服务器 ○ 所以不能离线提交 ● ● ● Git 的 add ○ 将修改添加到暂存区 Git 的 commit ○ 有 commit message ○ 将暂存区代码快照 ○ 与网路无关,纯本机操作 Git 的 push ○ 将已快照代码提交到服务器
8. SVN 的 commit == Git 的 add + commit + push ● SVN 的 commit ○ 有 commit message ○ 提交到中央服务器 ○ 所以不能离线提交 ● ● ● Git 的 add ○ 将修改添加到暂存区 Git 的 commit ○ 有 commit message ○ 将暂存区代码快照 ○ 与网路无关,纯本机操作 Git 的 push ○ 将已快照代码提交到服务器
9. SVN 的 commit == Git 的 add + commit + push ● SVN 的 commit ○ 有 commit message ○ 提交到中央服务器 ○ 所以不能离线提交 ● ● ● Git 的 add ○ 将修改添加到暂存区 Git 的 commit ○ 有 commit message ○ 将暂存区代码快照 ○ 与网路无关,纯本机操作 Git 的 push ○ 将已快照代码提交到服务器 一但有落后,都不让提交,必须先更新本地代码,强迫先 update(SVN)/pull(Git),所以不会在此发生冲突。
10. SVN 的 update == Git 的 pull ● ● ● 都是更新本地代码 似乎没有明显不同(待确认) 冲突都会在此发生
11. 为何 Git 冲突好处理? ● ● ● ● 底层如何建立分支? ○ Git 分支:记录差异(实际是 "快照",不是 "差异",但使用者可以不管) ○ SVN 分支:Copy 一份文件 开分支轻易、代价小,使冲突通常在萌芽期就处里掉,将合并的负担分散掉。 冲突处里本身并无明显差异。 参考资料 https://www.zhihu.com/question/62456796
12. 从 Subversion 迁移到 Git (尚未经过实践)
13. Subversion 迁移到 Git Step 1: user.txt 建立作者映射关系 user.txt 内容 schacon = Scott Chacon selse = Someo Nelse
14. Subversion 迁移到 Git Step 2: 从 SVN 仓库中拉数据 $ git svn clone --stdlayout --no-metadata -A users.txt svn://hostname/path dest_dir-tmp