4

可能重复:
什么是版本控制系统?Git 有什么用?

我们有一个使用 NetBeans IDE 的 PHP 项目,我认为它很棒。

我们在线完成所有工作(因为用户计算机和服务器上的一些数据库兼容性问题)。

一旦我们在 netbeans 中保存了一个 php 文件,它就会自动将该文件上传到服务器(因为当我们保存一个文件时,我们想要对其进行测试并且测试一个文件需要它在线)。

问题是我们是一个团队,我们使用 zend 框架的 MVC,所以很多时候我们在同一个控制器(文件)上工作。(但不同的行动)。

有时,当我们上传带有我们的新更改(而不是其他人的新更改)的过时本地文件时,我们不小心删除了彼此的代码,而我们互相教在编辑之前下载每个文件,我们只是人类并且(不像计算机) 犯错误。

很难找到错误发生在哪里以及是否发生了错误。因为每个人上传后只测试他/她自己的代码,而不是所有代码。并且只是检测到问题,例如“那个问题到底是从哪里来的,我检查过那个狗屎”

我发现我们不是地球上第一个遇到此类问题的团队,经过大量搜索后,我完成了 3 个字母单词的解决方案GIT

但是,当我在学习 git 时,它似乎只是不同编辑文件的备份,虽然它很有用,但我不知道它是否可以帮助多个人处理一个文件。

git 有帮助吗?

4

2 回答 2

3

当许多开发人员正在编辑一个文件时,Git 将为您提供帮助。如果他们编辑文件的单独部分,它将执行全自动(无合并冲突),并且如果有人编辑相同部分,则需要一些手动交互(解决合并冲突)。

于 2012-08-02T10:08:53.940 回答
1

您应该在提交时配置 Netbeans 和 git,然后推送到作为服务器的远程主机。完成后,您可以更好地编辑相同的文件,同时您还可以使用 git 在协作工作的同时保持(开发和生活)服务器上的代码最新。

这可以通过 pre-commit 和 post-commit 钩子来完成。在服务器上,您可以运行所谓的存储库。

在合并冲突时,服务器可以拒绝接受您的更改,因此您需要先解决您的盒子上的合并冲突,然后再将其推送到开发版本。

然后,您始终可以从开发版本推送到登台或生命服务器。当您使用标记时,您甚至拥有可以在点击时发布的软件版本。

Git 在这方面非常有帮助,这要归功于它易于安装、强大的使用能力和去中心化的特性。在过去的几年里,没有什么比 git 更能影响我编写和发布软件的方式了。

于 2012-08-02T10:24:44.990 回答