如何在MAC环境下使用svn以及新手在团队中使用svn的注意事项。

在1和Xcode4中,苹果有自己的SVN软件-> Organizer->;仓库

2.SVN checkout到达本地后删除本地文件对服务器有影响吗?

不会影响服务器,当你执行“svn更新”时,zai会自动重新下载;删除后执行“svn commit”也会将其从服务器上删除。

3.连接到服务器

单击文件-存储库-单击座位侧面的“+”,然后单击名称、svn服务器的地址和类型,选择subversion,然后单击next,依此类推。

4、Xcode4,SVN常用命令

提交提交

Checkout将服务器下载到本地计算机(我正在使用它)。

更新更新文件

文件-& gt;source controller->;更新

图中第三个按钮是视图对比度按钮。

5.详细说明在SVN的用法和注意事项

(1)提交自己的代码。

SVN更新的原则是及时更新和提交。一个小功能完成后,可以自己编译测试,尽早提交,这样也保存了版本历史,必要时可以回滚;在开始一天的工作之前,最后更新一下项目。

(2)保持原子提交(不要无意中修改提交别人的文档)

只提交自己修改的部分,最好不要一次性提交整个项目;

当一个函数或文件完成后,最好提交它。我在完成一个函数后遇到了代码中的bug,但是我没有提交,然后我做了修改。结果,我无法返回正常代码。

③不要提交自动生成的文件。

VisualStudio和其他开发工具会在生成过程中产生许多自动文件,比如像。suo,debug、release、obj等编译文件,以及其他自动生成的与编译代码无关的文件。这些文件提交的时候不应该签入,如果不小心签入了需要从仓库里删除。

④不要提交无法编译的代码。

在提交代码之前,您必须首先确保可以在本地编译它。当代码在提交前通过了自己的测试时,最好提交SVN的更新。

SVN常用命令的详细说明

1.将文件签出到本地目录。

Svn签出路径(路径是服务器上的目录)

比如:SVN结账SVN://192.168.1.1/pro/domain。

2.向版本库中添加新文件。

svn添加文件

例如:svnadttest.php(加上test.php)

3.删除文件

svn删除路径-m“删除测试文件”

比如:SVN删除SVN://192.168.1.1/pro/domain/test . PHP-m“删除测试文件”。

4.检查日志

svn日志路径

5.比较差异

Svn差异路径(将修改后的文件与基本版本进行比较)

6.将两个版本之间的差异合并到当前文件中。

svn合并-r m:n路径

SVN用法

更新,经常更新没有坏处,尤其是多人项目。如果在每次提交之前没有更新最新版本,svn将提示当前副本已经过期,需要更新。

Commit,一定要把这次提交的内容写个总结,以备将来参考。

将文件签出到本地目录。

Svn签出路径(路径是服务器上的目录)

svn update命令会自动用服务器上的版本替换本地版本控制的文件。

6.在Xcode中使用SVN并提交来解决冲突。

Xcode的SVN功能比Eclipse的subclipse或者windows的tortoiseSVN差太多了。

我根本不需要,用命令行就行。我觉得有朋友用subclipse,其实挺好的。然而,为了使用SVN函数,需要单独打开一个消耗资源的Eclipse。

但是无论你用什么SVN工具,都会遇到Xcode固有的问题,就是文件的提交冲突。

project.pbxproj文件包含构造过程所需的所有文件。如果在项目目录中添加新文件,比如不传递Xcode,那么该文件就不会在project.pbxproj文件中,也不会生成到app中。同样,如果您更新了来自SVN的其他项目成员添加的文件,而没有更新project.pbxproj文件(或者该成员根本没有提交此文件),也会出现同样的现象。

如果一个项目成员提交了一个新的project.pbxproj文件,你不需要在这里给项目添加新的文件,直接svn更新就可以了。

7.在Xcode中更新代码后,项目文件无法打开。

如果选择更新整个项目,尤其是project.pbxproj文件,通常会发生冲突。该文件包含构建过程所需的所有文件。如果一个新文件被添加到项目目录中但是没有通过Xcode,

该文件不在project.pbxproj文件中,因此不会生成到应用程序中。同样,如果您从SVN更新到由其他项目成员添加的文件,

如果不更新project.pbxproj文件(或者成员根本没有提交这个文件),也会出现同样的现象。这种文件冲突将直接导致无法打开项目文件。

更新代码后无法打开项目文件解决方法:

当tobacco.xcodeproj等项目文件无法打开时,可以右键选择'显示包内容',会看到三个文件,project.pbxproj/user.modelv3/user.pbxuser.

其中project.pbxproj有三个版本,可以像普通svn文件冲突一样解决冲突。

8.SVN更新提交和合并之间的差异

当本地文件不变而服务器文件改变时,更新将从服务器获取文件并覆盖当前文件。

当本地文件更改而服务器文件未更改时,此文件将不会更新。

当本地文件发生变化而服务器文件发生变化时,如果变化的部分不冲突,文件将合并到本地。如果有冲突,会提示文件有冲突,需要手动修改上传到服务器。

最后一个解释了合并:

服务器和本地的同一个文件(所谓同一个文件应该是SVN相对路径相同,文件名相同的文件,这是由SVN在本地留下的信息决定的)被修改过,修改的部分不重叠也不重合。

当满足上述条件时,SVN将自动合并。

SVN的秘密是,别人提交了修改后的文件,如果你再提交你的,他不会允许你提交。。。

& gt& gt& gt& gt

& lt& lt& lt

它标有冲突区域。为什么删除冲突区域后无法提交?

溶液1:

如果删除,冲突将无法解决。会有几个文件名相同但文件后面后缀不同的文件。

如果你不知道如何使用SVN来解决冲突,最简单的方法是这样的。

更改这个文件的名称,然后在文件所在的目录下更新,这样服务器文件就会被下载,然后修改的部分就会添加到更新的文件中,这样就可以提交了。

解决方案2:

右击文件,进入SVN菜单。应该有一个编辑冲突的按钮。如果您选择它,将出现一个窗口,一边是服务器版本,另一边是您自己修改的版本。

9.使用xcode自己的svn

1.代码中的一个文件标有“m”,表示该文件已经被修改,需要提交。

(右键单击文件-& gt;源代码管理->;提交选定的文件...)

2.代码中的文件后有一个“A”标记,表示该文件是新添加的,由SVN管理,需要提交。

(右键单击文件-& gt;源代码管理->;提交选定的文件...)

3.代码中的一个文件后跟“?”标记,表示该文件是新添加的,不在SVN管理范围内。首先,您需要添加,然后提交。

(右键单击文件-& gt;源代码管理->;添加,使文件的标记变为“a”,然后提交)。