版本控制工具是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了版本控制工具是啥?相关的知识,希望对你有一定的参考价值。

参考技术A 版本控制工具共有哪些?各有什么区别?
那最好把每次修改的内容都保留在脚本里面,以前的代码不删除,不要的就注释起来,并且加上时间标记,你看看这样可否满足?版本控制的软件挺多的vss,cvs,preforce等等,但个人都觉得不好用,没有这种方法直观

所有数据库脚本 按照普通程序一样保存为项目 代码

更新数据库 就更新脚本 或者增加脚本 作为增量/修改 标志

任何版本控制软件都可以 做到

我们公司已经用了我说的方法, 为了 做 增量升级

你的脚本还必须 分好 结构 或者写好一点 执行脚本,方便 执行 全 部署 和增量 部署 。

包括 数据结构 授权 特殊数据更新 存储过程 触发器 等等

就算你现在只有存储过程,难以保证以后没有其他的。
android版本控制的工具有哪些
为什么使用版本控制软件

备份多个版本,费空间,费时间

难于恢复至以前正确版本

容易引发BUG

解决代码冲突困难

代码管理混乱

难于追溯问题代码的修改人和修改时间

无法进行权限控制

项目版本发布困难

什么是版本控制

版本控制(Revision control)是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。

服务器端软件

Visualsvn

官网: visualsvn/server/

主要作用

新建项目仓库

新建用户

新建用户组

管理仓库

客户端软件

Tortoisesvn

官网 tortoisesvn/

图标介绍

表示此文件或文件夹与仓库版本同步,本地也没有被修改过。

表示此文件或文件夹在本地被修改过,状态就变成了已修改,而图标重载变成了红色感叹号。你可以很容易地看出哪些文件从你上次更新工作复本后被修改过,需要被提交。

如果在提交的过程中出现了冲突图标变成黄色感叹号。

如果你给一个文件设置了svn:needs-lock属性,Subversion会让此文件只读,直到你获得文件锁。只读文件具有这个重载图标来表示你必须在编辑之前先得到一个锁。

如果你拥有了一个文件的锁,并且Subversion状态是正常,这个重载图标就提醒你如果不使用该文件的话应该释放锁,允许别人提交对该文件的修改。

这个图标表示当前文件夹下的某些文件或文件夹已经被计划从版本控制中删除,或是该文件夹下某个受控的文件丢失了。

加号告诉你有一个文件或是目录已经被计划加入版本控制

注意事项

1)”.svn“这个隐藏目录记录著两项关键的信息: 工作文件的基准版本和一个本地副本最后更新的时间戳。千万不要手工修改或删除这个.svn隐藏目录和里面的文件!!! 否则将会导致你本地的工作拷贝(静态视图)被破坏,无法再进行操作。

2)经常更新:降低冲突的可能性

3)提交前需在本机测试通过:降低将问题代码传到版本库

4)提交时一定写备注:方便其他员工查看和自己以后回顾

5)对于不需要提交的文件不要提交到版本库,可对照.gitignore文件设置忽略
使用哪些工具进行版本控制
php程序吗? 一般项目都可以使用SVN 下载地址 subversion/?action-channel-name-product
版本控制软件的常用的版本控制软件简介
VSS是美国微软公司的产品,目前常用的版本为6.0版。VSS是配置管理的一种很好的入门级的工具。易学易用是VSS的强项,VSS采用标准的windows操作界面,只要对微软的产品熟悉,就能很快上手。VSS的安装和配置非常简单,对于该产品,不需要外部的培训(可以为公司省去一笔不菲的费用)。只要参考微软完备的随机文档,就可以很快的用到实际的工程当中。VSS的配置管理的功能比较基本,提供文件的版本跟踪功能,对于build和基线的管理,VSS的打标签的功能可以提供支持。VSS提供share(共 享)、branch(分支)和合并(merge)的功能,对于团队的开发进行支持。VSS不提供对流程的管理功能,如对变更的流程进行控制。VSS不能提供对异地团队开发的支持。此外VSS只能在windows平台上运行,不能运行在其他操作系统上。 有软件提供商提供VSS插件,可以同时解决VSS跨平台和远程连接两个问题,例如SourceAnywhere for VSS, SourceOffSite等。VSS的安全性不高,对于VSS的用户,可以在文件夹上设置不可读,可读,可读/写,可完全控制四级权限。但由于VSS的文件夹是要完全共享给用户后,用户才能进入,所以用户对VSS的文件夹都可以删除。这一点也是VSS的一个比较大的缺点。VSS没有采用对许可证进行收费的方式,只要安装了VSS,对用户的数目是没有限制的。因此使用VSS的费用是较低的。微软不再对VSS提供技术支持。 CVS是开发源代码的配置管理工具,其源代码和安装文件都可以免费下载。CVS是源于unix的版本控制工具,对于CVS的安装和使用最好对unix的系统有所了解能更容易学习,CVS的服务器管理需要进行各种命令行操作。目前,CVS的客户端有winCVS的图形化界面,服务器端也有CVSNT的版本,易用性正在提高。CVS的功能除具备VSS的功能外,还具有:它的客户机/服务器存取方法使得开发者可以从任何因特网的接入点存取最新的代码;它的无限制的版本管理检出(checkout:注1)的模式避免了通常的 因为排它检出模式而引起的人工冲突;它的客户端工具可以在绝大多数的平台上使用。同样,CVS也不提供对变更流程的自动管理功能。一般来说,CVS的权限设置单一,通常只能通过CVSROOT/passwd, CVSROOT/readers, CVSROOT/writers文 件,同时还要设置CVS REPOS的物理目录权限来完成权限设置,无法完成复杂的权限控制;但是CVS通过CVS ROOT目录下的脚本,提供了相应功 能扩充的接口,不但可以完成精细的权限控制,还能完成更加个性化的功能。CVS是开发源码软件,无需支付购买费用。同样因为CVS是开发源码软件,没有生产厂家为其提供技术的支持。如发现问题,通常只能靠自己查找网上的资料进行解决。 StarTeam是Borland公司的配置管理工具,StarTeam属于高端的工具,在易用性,功能和安全性等方面都很不错。StarTeam的用户界面同VSS的类似,它的所有的操作都可通过图形用户界面来完成,同时,对于习惯使用命令方式的用户,StarTeam也提供命令集进行支持。同时,StarTeam的随机文档也非常详细。除了具备VSS,CVS所具有功能外,StarTeam还提供了对基于数据库的变更管理功能,是相应工具中独树一帜的。StarTeam还提供了流程定制 的工具,用户可跟据自己的需求灵活的定制流程。与VSS和CVS不同,VSS和CVS是基于文件系统的配置管理工具,......>>
用什么版本控制软件管理excel
EXCEL设置共享,可以多人编辑,但是有一定的局限性-如不能插入附件,调整格式等等

方法如下图:

英文版的,最右面有个共享工作簿,即可
版本控制软件的版本控制软件作用
简单点说,你在开发过程中,会不断发现新需求,不断发现bug,如果不做控制,你的软件将永远不会发布,或今天一个版本,明天又是一个版本。
大家都用哪些版本控制软件
java的话,一般是svn,cvs都是英文的 的话一般用vss或者tfs[都有中文版]因为这两个都可以和vs集成.
android 的 版本控制工具有哪些
为什么使用版本控制软件

备份多个版本,费空间,费时间

难于恢复至以前正确版本

容易引发BUG

解决代码冲突困难

代码管理混乱

难于追溯问题代码的修改人和修改时间

无法进行权限控制

项目版本发布困难

什么是版本控制

版本控制(Revision control)是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。

服务器端软件

Visualsvn

官网: visualsvn/server/

主要作用

新建项目仓库

新建用户

新建用户组

管理仓库

客户端软件

Tortoisesvn

官网 tortoisesvn/

图标介绍

表示此文件或文件夹与仓库版本同步,本地也没有被修改过。

表示此文件或文件夹在本地被修改过,状态就变成了已修改,而图标重载变成了红色感叹号。你可以很容易地看出哪些文件从你上次更新工作复本后被修改过,需要被提交。

如果在提交的过程中出现了冲突图标变成黄色感叹号。

如果你给一个文件设置了svn:needs-lock属性,Subversion会让此文件只读,直到你获得文件锁。只读文件具有这个重载图标来表示你必须在编辑之前先得到一个锁。

如果你拥有了一个文件的锁,并且Subversion状态是正常,这个重载图标就提醒你如果不使用该文件的话应该释放锁,允许别人提交对该文件的修改。

这个图标表示当前文件夹下的某些文件或文件夹已经被计划从版本控制中删除,或是该文件夹下某个受控的文件丢失了。

加号告诉你有一个文件或是目录已经被计划加入版本控制

注意事项

1)”.svn“这个隐藏目录记录著两项关键的信息: 工作文件的基准版本和一个本地副本最后更新的时间戳。千万不要手工修改或删除这个.svn隐藏目录和里面的文件!!! 否则将会导致你本地的工作拷贝(静态视图)被破坏,无法再进行操作。

2)经常更新:降低冲突的可能性

3)提交前需在本机测试通过:降低将问题代码传到版本库

4)提交时一定写备注:方便其他员工查看和自己以后回顾

5)对于不需要提交的文件不要提交到版本库,可对照.gitignore文件设置忽略
在软件开发时使用哪些工具进行版本控制
Visual Studio 推荐你使用 TFS,TFS 专门为 Visual Studio 设计。

集成 TFS 版本控制的最佳方法是啥

【中文标题】集成 TFS 版本控制的最佳方法是啥【英文标题】:What is the best way to integrate TFS version control集成 TFS 版本控制的最佳方法是什么 【发布时间】:2010-09-09 09:03:24 【问题描述】:

致力于在整个组织中实施 TFS。它很容易与.NET 项目和任何使用 Eclipse 或 Eclipse 衍生版本进行编辑的平台集成。 在 Xcode 中使用 TFS 版本控制的最佳方式是什么(现在我发现我们需要编写一些 iPhone 应用程序)?

【问题讨论】:

我有同样的问题:我需要将 XCode 与 Team Foundation 服务器一起使用。我注意到这个问题有点老了,有些答案已经过时了。见***.com/questions/3391594/… 【参考方案1】:

Xcode 集成是我们Teamprise 一直在研究的东西。对我们来说主要问题之一是 Apple 没有提供一个版本控制 API,我们可以使用它来向 Xcode 添加新的版本控制系统——对于集成的版本控制,它要么是 Apple 提供的系统访问权限,要么是什么都没有。时刻。

也就是说,我们确实有许多客户使用 Xcode for TFS 进行开发。他们要么使用Teamprise Explorer(它是编译为通用二进制文件的TFS 的独立GUI 客户端),要么在Xcode 中使用宏来执行基本的签出并与TFS command line (tf) 一起执行操作。这显然不是理想的体验,但对他们来说是可以接受的。独立 GUI 的优点是您也可以在那里进行所有工作项跟踪,并将其与您的签到集成。

对不起,如果这是一个非常“营销”类型的答案 - 只是想让您知道我们当前的客户使用 Xcode 做了什么。如果您想了解有关宏方法的更多详细信息,请告诉我。

希望对你有帮助,

马丁。

【讨论】:

感谢 Martin - 我很想了解更多关于宏观方法的信息。【参考方案2】:

几周前由 codeplex 宣布的 Git-tf 可以完成这项工作。

【讨论】:

这是有关如何操作的教程的链接:tfs.visualstudio.com/en-us/learn/code/…【参考方案3】:

一种方法是在 VMWare 中的 Windows 下使用 Team Foundation System 客户端,然后将源代码检出(或任何 TFS 名称)到 Mac 上与虚拟机共享的目录中。看起来Teamprise 有一个基于 Eclipse 构建的适用于 Mac OS X 的 Team Foundation 客户端,值得研究。

也就是说,我强烈建议您使用本机跨平台源代码管理系统,例如 Subversion 或 Perforce,而不是像 Team Foundation System 这样的平台特定孤岛,用于贵公司的资源代码,尤其是因为您要进行多平台开发。

虽然您不太可能在 .NET 应用程序和 iPhone 应用程序之间共享代码,但拥有对设计文档等内容的完全跨平台访问权限可能非常重要。 Mac OS X 10.5 和更高版本包括 Subversion,Perforce 很容易获得,并且 Xcode IDE 原生支持 Perforce 和 Subversion。经验丰富的 Mac 和 iPhone 开发人员更可能熟悉 Subversion,您可能会在项目升级时将其带入项目中。

【讨论】:

【参考方案4】:

也许 SVNBridge 可以解决问题,它是 CodePlex(微软的开源托管)使用的开源。在这里查看:http://www.codeplex.com/SvnBridge

除了简单地使用它连接到 CodePlex 之外,我对它的经验有限。

【讨论】:

SVNBridge 在 Mac 上可用吗?【参考方案5】:

点击这个链接,它真的很有帮助:

https://www.visualstudio.com/get-started/cross-platform/share-your-xcode-projects-vs

之后将现有的 xCode 项目代码签入到 TFS 中

在您的 Mac 上,下载并解压缩 www.microsoft.com/en-us/download/details.aspx?id=30474。我把它放在/users/myuseraccount/git-tf

打开终端并运行以下命令

export JAVA_HOME=/Library/Java/Home
export PATH=$PATH:$JAVA_HOME/bin:/git_t
export PATH="/Applications/Xcode.app/Contents/Developer/usr/libexec/git-core/":$PATH
export PATH="/Users/myuseraccount//Git-Tf/":$PATH

将工作目录更改为您的 xCode 项目文件夹:

例如:cd “/users/myuseraccount/documents/xCode Projects/testproject1/”

在终端火线中:

- git remote add origin url//companyName.visualstudio.com/DefaultCollection/_git/xyz

git push -u origin --all

它将直接将您的项目推送到 Visual Studio TFS 服务器..!!!!

【讨论】:

看起来他们也对此进行了迭代和扩展。 visualstudio.com/get-started/share-your-xcode-projects-vs【参考方案6】:

最大的问题是 Xcode 只能在 OS X 上运行,而 TFS 客户端工具只能在 Windows 上运行。如果您是 OS X 中的主机操作系统,并且您有一个本地运行的 Windows 虚拟环境(如 Parallels 或 VMFusion),那么您可以使用 Team Explorer 或命令行工具来处理存储库。

但这只是为了使用一个真正过时的版本控制系统。如果您不必使用 TFS,我可能会使用 SVN 或其他支持本机 OS X 的东西。

【讨论】:

以上是关于版本控制工具是啥?的主要内容,如果未能解决你的问题,请参考以下文章

SVN是啥

svn是啥工具,如何使用

git github gitlab之间是啥关系

SVN是啥意思?

GIT 是啥,不是啥......版本控制?

集成 TFS 版本控制的最佳方法是啥