【问题标题】:GitHub and Source Code Protection and Control [duplicate]GitHub和源代码保护和控制[重复]
【发布时间】:2011-03-11 14:25:06
【问题描述】:

我在一家拥有大约 12 到 15 名开发人员的小型初创公司工作。我们最近在我们的一台服务器上遇到了问题,整个服务器都被“重新配置”了,即完全清除了所有代码、数据库和信息。我们的托管公司告诉我们,只有有权访问服务器帐户的人才能做这样的事情 - 我们认为这可能是一个心怀不满的员工(我们最近不得不缩小规模)。我们对部分数据进行了本地备份,但仍在尝试从数据丢失中恢复。

我的问题是——我们最近开始使用 GitHub 来管理我们其他一些项目的源代码控制——并且拥有更多的私有存储库——有什么方法可以确保对我们的源代码进行某种保护代码?我的意思是我知道你可以删除 GitHub 上的整个项目,甚至是一系列代码更新。我想避免这种情况发生。

我想做的是在 Git 上创建(可能在单独的存储库中)项目的完整副本 - 并确保只有一个人可以访问这个复制的项目。这样,如果原始项目因任何原因损坏或破坏,我们可以从备份存储库恢复我们所在的位置(历史完整)。

这可能吗?做这个的最好方式是什么? Github 最近引入了“公司”帐户……这是要走的路吗?

对于这种情况的任何帮助将不胜感激。

干杯!

【问题讨论】:

  • 很抱歉听到你被烫伤了!
  • GitHub 市场上有一些可用的备份应用程序:github.com/marketplace?query=backup 其中一种解决方案可能是使用 Cloudback 创建 GitHub 存储库备份。备份可以在本地下载或保存在最流行的云存储之一中。有关详细信息,请参阅github.com/marketplace/cloudback

标签: security backup github


【解决方案1】:

Git 是一个分布式系统。因此,您的本地副本与 Git 集线器上的远程副本相同!你应该可以把它推回到那里。

【讨论】:

    【解决方案2】:

    首先,你应该真正咨询 github 支持——只有他们可以告诉你他们是如何进行备份的,他们有哪些权限控制选项(尤其是现在他们引入了“组织”)等等。你也同意他们-- 请阅读。

    其次,通过 cron 执行 git fetch 仍然非常容易,例如,每小时一次(在您的本地计算机或服务器上)——而且您非常安全。

    【讨论】:

    • 太完美了——我们将使用 git fetch 来实现一个二级本地备份,这样我们就知道内部总是有一些东西可以恢复到......
    【解决方案3】:

    好吧,如果心怀不满的员工离职,您可以轻松地将其从所有存储库中删除,尤其是在您使用组织的情况下 - 您只需将其从团队中删除即可。如果有人恶意删除了由于某种原因仍然可以访问的存储库,我们会每天备份所有存储库,如果您提出要求,我们将重新构建这些存储库。因此,在最坏的情况下,您永远不会失去超过一天的代码工作。无论如何,团队中的某个人可能会对该代码进行更新。如果你需要更多的保护,那么可以,你可以设置一个 cron'd fetch 或者更频繁地镜像你的代码的东西。

    【讨论】:

    • 非常感谢您的回答...知道 GitHub 对存储库进行每日备份非常有帮助 - 您是 GitHub 员工吗?我们还将实施每日 cron 提取作为本地二级备份的级别。
    • @ScottChacon GitHub 镜像是否遍布全球?我问了here
    猜你喜欢
    • 2019-09-15
    • 2016-06-11
    • 2012-07-21
    • 2012-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-28
    • 2012-03-24
    相关资源
    最近更新 更多