开发了很长时间,但改用Git进行版本控制。
原谅我可能很痛苦的显而易见的问题,但是鉴于以下情况,git的行为如何?
如果我创建了一个分支“ A”,并检出了该分支,那么如果我打开FTP客户端,下载文件,进行一些更改并重新上传(或使用FTP插件从Sublime对其进行远程编辑),高手此时已更改或仅是分支?如果在我将分支签出后,其他人在我们的开发服务器上对该文件进行了编辑,会发生什么情况?
我的直觉是,您不能有多个人在同一台服务器上编辑物理文件,而必须将它们克隆到本地或开发服务器上以克隆它们以进行自己的编辑(即使效率低下)。我只是想确保我已经充分围绕git概念做好了准备。
当我开发SAP时,创建了在其中跟踪更改的“传输”,但是每个人都在同一台服务器上编辑同一文件,但是传输跟踪所做的更改以及更改的对象,因此您不必克隆文件任何地方。不确定Git是否以相同的方式工作。
关于此主题的任何澄清将是有帮助的。
谢谢!
这是git的工作方式:
当您从远程获取分支(例如说branchA
)并签出到该分支时,实际上您正在查看的是该分支的本地副本。确切地说,origin/branchA
是远程分支,branchA
是分支的本地副本。现在,根据您的情况,您的本地副本实际上位于您要通过ftp进行更改的远程计算机中。更改文件后file1
,在当前分支中说,您未提交的更改将包括file1
。
如果许多人将ftp输入同一台计算机,那么每个人都会看到这种变化,因为这就是ftp的工作方式。提交文件并将其推送到后origin/branchA
,您的远程分支将获得提交的更改。
与svn不同,您不依赖git中的中央服务器。每个人都克隆远程仓库的副本,在本地计算机上更改其本地副本,然后将更改推送到远程。其他人则在协作的基础上提取代码以在需要时获取更改并添加其更改等。这就是为什么它被称为分散版本控制。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句