我正在尝试学习Eric Sink的版本控制基础知识 - http://ericsink.com/vcbe/vcbe_usletter_lo.pdf
我现在在第22页.我会为你描述一下这个场景.同一台计算机上的两个用户harry和sally正在处理一个名为lottery.c的文件,该文件存储在一个名为lottery的仓库中.
1 - Harry提交第一个/初始代码.2 - Sally更改并提交.3 - 虽然2正在发生,但哈里已经做出了改变,但没有做出改变.4 - Harry承诺并收到错误.
Transmitting file data .svn: Commit failed (details follow):
svn: File '/lottery.c' is out of date
Run Code Online (Sandbox Code Playgroud)
5 - 为了解决这个问题,哈里将使用更新他的本地副本svn update
.
这是我遇到问题的地方!作者说输出是:
lottery harry$ svn update
G lottery.c
Updated to revision 2.
Run Code Online (Sandbox Code Playgroud)
但是,我的输出是:
lottery harry$ svn update
Updating '.':
C lottery.c
Updated to revision 2.
Conflict discovered in file 'lottery.c'.
Select: (p) postpone, (df) show diff, (e) edit file, (m) merge,
(mc) my side of conflict, (tc) their side of conflict,
(s) show all options:
Run Code Online (Sandbox Code Playgroud)
我是新人,我不知道如何回应这条消息.我的书错了吗?请帮我.谢谢.
Dav*_* W. 43
当您有多个人同时更改同一个文件时,两者都很可能更改相同的行.这就是发生在你身上的事.莎莉改变了哈利改变的方式.当哈利做的时候svn update
,Subversion发现了这个,并且问你该怎么做.
一句警告:有时Subversion只是在查找版本与版本之间的差异,而不是有意义的差异.例如,如果更改了行的缩进,或者间距不同,或者更改了行结尾,则Subversion会将此声明为冲突,即使它可能不是.这可能就是为什么这本书没有找到这个问题,但你做到了.并不意味着你做错了什么.
该怎么办?Subversion给你一些选择.
<<<<<<< .mine
foobar
=======
fubar
>>>>>>> .rxxx
Run Code Online (Sandbox Code Playgroud)
这将向您展示修订版rxxx(Sally所做的)与您所做的更改(Harry的更改)之间的变化.通常情况下,这些变化很小,很容易弄清楚要做什么.
increment
,Sally称之为变量counter
.正如我所说,我通常会推迟,让我的更新完成,然后处理问题.
一旦你解决了这个问题,你就可以svn resolved
在该文件上做一个让Subversion知道你已经解决冲突的问题.
还有其他选择 - 例如,您可以启动第三方差异/合并工具来处理冲突.
有关更多信息,请查看有关解决合并冲突的Subversion在线手册.
如果您选择该s
选项,它将显示:
(e) edit - change merged file in an editor
(df) diff-full - show all changes made to merged file
(r) resolved - accept merged version of file
(dc) display-conflict - show all conflicts (ignoring merged version)
(mc) mine-conflict - accept my version for all conflicts (same)
(tc) theirs-conflict - accept their version for all conflicts (same)
(mf) mine-full - accept my version of entire file (even non-conflicts)
(tf) theirs-full - accept their version of entire file (same)
(p) postpone - mark the conflict to be resolved later
(l) launch - launch external tool to resolve conflict
(s) show all - show this list
Run Code Online (Sandbox Code Playgroud)
使用dc
查看冲突分析,那么你可以在最好的选择决定使用
归档时间: |
|
查看次数: |
44940 次 |
最近记录: |