我正在尝试将SourceForge项目从Subversion转换到Git。根据一些谷歌搜索,应该可以使用这个命令:gitsvnclonehttp://PROJECT.svn.sourceforge.net/PROJECT.git其中PROJECT是SourceForge中的项目名称,用于将SVN项目checkout到本地git存储库中。然而,这只会给出以下错误信息:InitializedemptyGitrepositoryin/home/user/git/PROJECT.git/.git/Useofuninitializedvalueinconcatenation(.)orstring
在我的工作场所,我们有一个大型Subversion存储库,其中包含大约100个项目。一些项目通过svn:externals相互使用。通常所有人都拥有对所有内容的读+写访问权限,但有时外部人员和实习生对某些自定义文件夹的读/写访问权限有限,因此他们无法获得我们的皇冠上的珠宝。你会如何在git中构建它?每个项目都有自己的存储库?你如何重用代码?你能以某种方式实现访问权限吗? 最佳答案 结构:是的,每个存储库1个项目。Git专为以这种方式工作而设计,并且做得非常好。重用代码:使用gitsubmodules(与svn:externals非常
在我的工作场所,我们有一个大型Subversion存储库,其中包含大约100个项目。一些项目通过svn:externals相互使用。通常所有人都拥有对所有内容的读+写访问权限,但有时外部人员和实习生对某些自定义文件夹的读/写访问权限有限,因此他们无法获得我们的皇冠上的珠宝。你会如何在git中构建它?每个项目都有自己的存储库?你如何重用代码?你能以某种方式实现访问权限吗? 最佳答案 结构:是的,每个存储库1个项目。Git专为以这种方式工作而设计,并且做得非常好。重用代码:使用gitsubmodules(与svn:externals非常
设置现有svn存储库的只读git镜像并设置提交后Hook以便每当有人提交到svn时自动更新git镜像的最佳方法是什么?主要是,我想在服务器上只运行一次git-svnclone,然后让人们只需从git中checkout,而不必自己git-svnclone整个svn存储库。 最佳答案 我在一个使用SVN的项目上这样做(推送到github上的公共(public)存储库)。我没有SVN提交Hook,但这是一个cron作业:#!/bin/bashrepo=/path/to/my-mirror.gitlockfile="$repo/cron-l
设置现有svn存储库的只读git镜像并设置提交后Hook以便每当有人提交到svn时自动更新git镜像的最佳方法是什么?主要是,我想在服务器上只运行一次git-svnclone,然后让人们只需从git中checkout,而不必自己git-svnclone整个svn存储库。 最佳答案 我在一个使用SVN的项目上这样做(推送到github上的公共(public)存储库)。我没有SVN提交Hook,但这是一个cron作业:#!/bin/bashrepo=/path/to/my-mirror.gitlockfile="$repo/cron-l
我已经使用Gitfork了一个SVN项目,因为我需要添加他们不需要的功能。但与此同时,我希望能够继续将他们添加到上游版本的功能或修复引入我的分支(它们不冲突)。因此,我的Git项目具有以下分支:master-我实际构建和部署的分支feature_***-我工作或从事过新事物的功能分支,然后在完成后将其merge到mastervendor-svn-我的本地git-svn分支允许我从他们的svn仓库中“gitsvnrebase”vendor-我将vendor-svnmerge到的本地分支。然后我将这个(供应商)分支推送到公共(public)gitrepo(github)所以,我的流程是这样
我已经使用Gitfork了一个SVN项目,因为我需要添加他们不需要的功能。但与此同时,我希望能够继续将他们添加到上游版本的功能或修复引入我的分支(它们不冲突)。因此,我的Git项目具有以下分支:master-我实际构建和部署的分支feature_***-我工作或从事过新事物的功能分支,然后在完成后将其merge到mastervendor-svn-我的本地git-svn分支允许我从他们的svn仓库中“gitsvnrebase”vendor-我将vendor-svnmerge到的本地分支。然后我将这个(供应商)分支推送到公共(public)gitrepo(github)所以,我的流程是这样
我对如何从不同的本地git分支提交多个svn分支感到有点困惑。特别是,尽管我已经阅读了许多关于这个主题的相关问题,但到目前为止似乎还没有人解释过一件具体的事情:如果我已经有几个本地分支,我如何知道它们正在跟踪哪个远程svn分支(如果有的话)?来自thisanswer好像可以更改要跟踪的分支,但是如何查询呢?gitbranch-v似乎在这方面没有特别的帮助(即没有提供额外信息)。我还查看了.git/中的所有文本文件,但也没有在其中找到任何内容。 最佳答案 gitsvninfo为您提供完整的存储库URL,因此SVN分支应该出现在那里。
我对如何从不同的本地git分支提交多个svn分支感到有点困惑。特别是,尽管我已经阅读了许多关于这个主题的相关问题,但到目前为止似乎还没有人解释过一件具体的事情:如果我已经有几个本地分支,我如何知道它们正在跟踪哪个远程svn分支(如果有的话)?来自thisanswer好像可以更改要跟踪的分支,但是如何查询呢?gitbranch-v似乎在这方面没有特别的帮助(即没有提供额外信息)。我还查看了.git/中的所有文本文件,但也没有在其中找到任何内容。 最佳答案 gitsvninfo为您提供完整的存储库URL,因此SVN分支应该出现在那里。
在我们的git-svn托管项目中,我们有3个上游项目,它们都保存在GitHub上的本地git存储库中。由于那些上游项目的源代码在我们的控制之下并且经常更改,我们当前的解决方案,即每次我们更改某些内容时都将构建工件重新部署到super项目是非常麻烦的。我想要的是:parentproject(git-svn):-->submodule1(git)-->submodule2(git)-->submodule3(git)这样,子模块1-3的源代码与super项目的源代码一起编译,但我可以单独将更改推送到子模块。问题是:当我在父项目上gitsvndcommit时会发生什么?这真的有用吗?更新嗯,