【问题标题】:Use Git locally at work in conjunction with custom "source control"结合自定义“源代码控制”在本地使用 Git
【发布时间】:2013-11-01 16:06:18
【问题描述】:

在工作中,我们需要使用自定义的“源代码控制”系统。基本上,每当我们将新更改推送到我们的实时环境时,它都会对我们的代码进行快照。除了获取最后一次实时推送的副本之外,没有回滚功能,没有机制可以查看谁更改了什么,并且一旦一个人在处理代码,其他人就可以更改源代码并且您不会知道(除非您发现变化)。

我想在这个环境中实现 Git,但我在 Git 的方式上不够聪明,无法弄清楚如何最好地做到这一点。以下是我需要处理的要求:

  • 源代码存储在远程文件路径中。
  • 一旦我开始了一个项目,任何人都可以更改远程源(如果可能,我希望捕获这些更改)。
  • 源(通常)在我开始工作之前就已经存在。
  • 在我完成一个项目后,其他人可能会更改源代码(不使用 Git)。
  • 我将尝试让其他同事也参与其中。
  • 我对远程服务器只有文件读/写权限。
  • 我的同事不喜欢命令提示符(坦率地说,我更喜欢使用 GUI),因此使用 GUI(如 Windows 的 GitHub,或者更好的是 Visual Studio 中的团队资源管理器工具)将是高度优先。
  • 我们是一家仅限 Windows 的商店,专门研究 C# 和 ASP.NET MVC,因此任何解决方案都需要在这些范围内工作。
  • 对远程文件和文件夹的影响应该是最小的。我知道 Git 很轻,但我能做的任何事情都可以让它尽可能地不可见。

我已经研究过如何做到这一点,但我没有找到适合我的好解决方案(或者至少我理解对我有用)。我找到了这篇文章,但它似乎不适用于我的环境(再次,也许这是我缺乏理解): http://mattsnider.com/develop-locally-using-git-instead-of-your-company-s-crappy-version-control/

您可以提供的任何帮助将不胜感激。如果您提供的帮助对于知识渊博的 Git 用户(我)是可行的,我将不胜感激。要遵循的步骤和说明为什么会很重要。

【问题讨论】:

  • 拥有所有真正的源代码控制系统,包括付费和免费的,如果您的雇主不喜欢使用,请帮自己一个忙!
  • @Jason 是的,远离你的问题,而不是试图解决它们。这绝对是最好的选择......
  • @Chibbles 如果他/她的雇主愿意使用一个,我相信操作员会建议并让他们使用一个。如果您的雇主有一天告诉您开始用笔和纸编写代码并提交给打字速度比您快 1,000 倍并且不会让步的专业打字员,我看不出这是如何“逃避您的问题”的给你一个IDE,你觉得留下来真的有意义吗?玩得开心,然后享受自己……尽管再想一想……您是操作的雇主,不是吗!? :P
  • SmartGit 是一个很棒的 git GUI(需要花钱); SourceTree 是另一个 GUI(免费提供)。有关完整列表,请参阅 here
  • 不,@Chibbles 不是我的雇主。 :-) 至于螺栓连接,我试图展示 Git 在当前环境中将如何发挥作用。一旦我这样做了,我想我可以慢慢转向“真正的”源代码控制系统。我正在尝试解决这种情况,而不是将其留给其他人清理。是的,我建议进行更改,并且演示了 Git 和其他源代码控制系统。到目前为止,我很感兴趣,但没有继续前进的许可。

标签: c# git visual-studio


【解决方案1】:

如果您的雇主已经有一个成熟的版本控制系统,可以处理公司需要存储的所有不同的人工制品(这不仅仅是源代码),那么甚至不要尝试实际更改 他们的 系统。

问题更多是关于如何帮助自己,这取决于您对个人存储和网络存储的访问级别 - 后者由其他人维护。

假设您有本地存储,那么您可以在您自己的本地源代码副本中设置一个 git 存储库。然后,您将在/您的网络驱动器上设置一个遥控器作为您的备份。 (如您引用的博客中所述)。

我在开发中使用(各种)Git-for-Windows、Git-Gui、gitk 和 Git 扩展,以便我可以为任何特定任务挑选和混合最佳工具/命令。我发现它对我的 Matlab 开发特别有用,因为它具有(我的)系统工程中常见的快速交互式编辑-修复-更新。

当我在提交中有一个稳定版本时,我想将其发送回公司 VCS,然后我可以将其签出/返回(或任何他们的流程要求)到他们的系统(标记该提交) .

同样,如果您需要从他们的 VCS 更新另一个文件,您应该有一个分支来接收它的结帐,然后合并回您的开发分支(或任何最适合您的流程)。

定期将您的本地存储库推送到您的裸网络存储库中,这样您就有了备份和一些安全性。如果需要,您可以随时捆绑您的存储库,或归档其他备份所需的提交。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-27
    • 1970-01-01
    • 2014-04-06
    • 2013-08-16
    • 1970-01-01
    • 2019-05-22
    相关资源
    最近更新 更多