Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Version control 个人存储库的Mercurial扩展_Version Control_Mercurial - Fatal编程技术网

Version control 个人存储库的Mercurial扩展

Version control 个人存储库的Mercurial扩展,version-control,mercurial,Version Control,Mercurial,我有这个想法,我希望我的版本控制系统的行为,我想我会放弃这个想法,看看是否有人知道任何现有的方法来实现这一点。 我喜欢mercurial,所以这就是我针对这个问题提出的目标,但我很高兴听到其他能够实现这一目标的软件 好的,那么问题来了。 作为一名研究人员,我想了解很多不同的东西。这可以是代码(小脚本或更大的应用程序)、手稿、数据、课程作业等。 我不想把它全部存储在一个大型存储库中,因为 我希望“hglog”只显示与当前项目相关的内容 我可能希望在其他地方发布代码,并保留历史记录 只是感觉不对 因

我有这个想法,我希望我的版本控制系统的行为,我想我会放弃这个想法,看看是否有人知道任何现有的方法来实现这一点。 我喜欢mercurial,所以这就是我针对这个问题提出的目标,但我很高兴听到其他能够实现这一目标的软件

好的,那么问题来了。 作为一名研究人员,我想了解很多不同的东西。这可以是代码(小脚本或更大的应用程序)、手稿、数据、课程作业等。 我不想把它全部存储在一个大型存储库中,因为

  • 我希望“hglog”只显示与当前项目相关的内容
  • 我可能希望在其他地方发布代码,并保留历史记录
  • 只是感觉不对
  • 因此,我目前的想法是,在一个中央服务器上有一个包含不同存储库的目录层次结构。类似这样的东西(只有标记为hg repo的东西是存储库,其他所有东西都是标准文件系统目录):

    现在,这很好用,因为我可以破解一些东西,然后做
    hg克隆ssh://my.university.server.com/hgrepo/Code/CodeSample1
    ,然后编辑.hg/hgrc并更改服务器的默认路径。 但这有点麻烦

    我想要的是有一个扩展,让我

    • 列出存储库,如
      hg repo ls code/
      ,以显示代码下面的级别/
    • 使用上面的简单路径进行克隆(跳过繁琐的ssh://和服务器主机名等)
    • 将本地存储库发布到远程存储库(即,在处理错误时克隆并更改默认路径)
    基本上,我认为它类似于一个私有的、自托管的bitbucket/github。 有人知道类似的系统吗


    我只能通过SSH访问文件服务器,因此无法在主机上运行任何服务器应用程序。但我很高兴听到有系统也需要这样做,因为如果软件足够好的话,我也许可以改变这一点:)

    Bitbucket免费提供私人回购。也许这就是你想要的

    -- ~/hgrepo/
           --  Projects/
                     --  Project 1 (hg repo)
                     --  Project 2 (hg repo)
    
           -- Code
                     --  MyCoolApplication
                                      -- MyAppSource (hg repo)
                                      -- SomeExternalPatchedLib (hg repo)
    
                     --  CodeProject 1 (hg repo)