我的团队目前使用一个古老,可怕的源代码控制库,我们正在寻求切换到更成熟的系统。 Git是最吸引我们的。
我们为公司内部消费开发软件和脚本,同时我们在许多项目上工作。同一个开发人员可能会在几周内完成一个长期项目,中间有几个小到小的项目。
我们当前的VCS有一个中央存储库,每个人都会检出并返回这个位置。您只有工作站上的当前副本。
我们当前的图书馆允许我做的一件事是查看谁签出了文件但忘记检查更改。使用git,所有存储库都是本地的,所以如何知道是否有人忘记推送到中央副本?
答案 0 :(得分:3)
重要的问题是为什么你需要知道。因为看起来你有人问题而不是技术问题。这些问题的技术解决方案在实践中很少有效。
旧版本控制系统知道服务器上的“检出”操作,因为它们在合并时很难,所以他们需要防止两个人同时处理同一个文件。但是这导致了许多问题,因为人们需要彼此等待,所以它被“编辑 - 合并 - 提交”工作流所取代,其中多个人可以同时处理同一个文件,因为在实践中,更改是大多数时候容易结合。版本控制服务器停止了对本地修改的关注。通过将中间步骤存储为并行历史,分布式版本控制更进一步。
因此,您不需要知道谁有本地更改,因为它会阻止任何人;它没有。
你可能想知道的唯一其他原因是你可以提醒他们他们仍然没有完成它。这就是人们的问题,看到未提交的更改无论如何都无法解决。如果他们甚至没有开始怎么办?或者他们开始而不是因为某种原因取消了结账?
因此,您需要跟踪他们分配的任务,并询问他们的状态。而git使他们可以通过推送临时分支或通过电子邮件发送差异甚至通过网络导出本地存储库来向您展示他们正在进行的工作,以便您可以从中获取。