相关疑难解决方法(0)

675
推荐指数
5
解决办法
56万
查看次数

git-svn不是git命令?

在尝试使用git控件获取项目的旧svn转储时,我遇到了一个有趣的问题.每当我运行时git svn,我都会收到一条错误消息,说它不是git命令,但是我可以使用它来获取文档git help.我的安装有什么问题,或者我在这里遗漏了什么?

编辑:我可能还应该提到我在Windows XP下运行msysGit版本1.6.1.9.g97c34,我得到的错误是:

$ git svn 
git: 'svn' is not a
git-command. See 'git --help'.

Did you mean one of these?
        fsck
        show

svn git git-svn

102
推荐指数
7
解决办法
6万
查看次数

我可以将现有的Subversion存储库移动到新的父存储库(并保留历史记录)吗?

目前,我为每个项目设置了根级存储库,如下所示:

Project1
Project2
Project3
Project5
Project5
Run Code Online (Sandbox Code Playgroud)

我想重新组织这个,以便不是每个项目的存储库,而是每个逻辑分组只有一个,然后项目只是这些"组存储库"中的文件夹,例如:

WebSites
    Project1
    Project2
DesktopApps
    Project3
Libraries
    Project4
    Project5
Run Code Online (Sandbox Code Playgroud)

在保留现有存储库的历史的同时,这是否可行?我看了很多,但我能找到的只是在同一个存储库中移动文件夹,并将文件夹从存储库移动到新的存储库中.

无论如何它只适用于个人的东西,所以如果它只是一个直接的"不",它不是世界的尽头 - 但是知道所以我不仅仅是撞墙而已.

svn

30
推荐指数
2
解决办法
2万
查看次数

我使用git-svn导入git的svn存储库已经移动了

我正在使用git-svn使用git存储库.一切顺利,直到svn存储库的维护者决定将存储库移动到不同的URL.

如何告诉我的git-svn客户端从新的svn存储库中获取?

我已经更改了svn URL svn-remote,.git/config但现在我收到以下错误:

svn-remote.svn.url already set: https://old.svn.repo
wanted to set to: https://new.svn.repo
Run Code Online (Sandbox Code Playgroud)

svn git git-svn

13
推荐指数
1
解决办法
2460
查看次数

SVN提交旧日期/时间

有没有办法如何使用旧的时间/日期提交到SVN存储库或如何编辑提交后的时间/日期?

在我开始使用SVN之前,我有一些非常古老的存档源,现在我想将它们放入SVN,如果可能的话保存它们的原始日期,以便SVN历史记录与编辑文件的实际日期相匹配.

操作SVN服务器时间是一个显而易见的选择,但它不能在这里使用,因为SVN服务器不受我的控制.

svn timestamp commit

11
推荐指数
2
解决办法
1万
查看次数

svn:E000002:提交失败

我正在尝试将我的Wordpresss插件发布到他们分配给我的svn存储库中.我使用git(不是svn)所以我正在尝试使用git-svn但是当我尝试使用这些指令推送我的本地git repo时出现以下错误:

$ git svn dcommit
Committing to http://plugins.svn.wordpress.org/wp-github-pipeline/trunk ...
    A   .bowerrc
    A   composer.json
    A   composer.lock
   ...
    A   vendor/guzzle/guzzle
b3f5050cb6270c7a728a0b74ac2de50a262b3e02 doesn't exist in the repository at /usr/local/git/lib/perl5/site_perl/Git/SVN/Editor.pm line 401.
Failed to read object b3f5050cb6270c7a728a0b74ac2de50a262b3e02 at /usr/local/git/libexec/git-core/git-svn line 1011.
Run Code Online (Sandbox Code Playgroud)

我已经做了很多搜索(参见下面的"其他资源"),我理解这个问题通常是由子模块的结合使用引起的git svn.我确实有一个子模块,但我提交了文件,并.gitmodules使用git filter-branch 此处描述的删除,但问题仍然存在.所以我搜索了更多,似乎使用作曲家和/或凉亭可能会导致同样的问题.

我没有尝试vendor/从我的.gitignore中删除并承诺所有的第三方图书馆......我有预感可能有用,但即使这样做也不是一个可持续的长期解决方案.

有没有办法告诉git-svn忽略我的.gitignore并上传所有vendor/ files?.或者是否有另一种方法可以避免将所有依赖关系都归入回购?或者这是一个与我想的不同的问题?提前致谢!

更新1vendor/**从我的移除.gitignore并在我的本地存储库中提交了依赖项(但没有推送到源).但我得到了完全相同的错误!

更新2 我将所有文件复制到一个新目录,并尝试进行基本的svn提交.没有子模块.包括所有供应商/文件.我收到另一个错误:

$ svn ci -m 'Adding version 1.0 files'
Sending        trunk/.gitignore
Adding …
Run Code Online (Sandbox Code Playgroud)

svn git wordpress version-control git-svn

10
推荐指数
1
解决办法
956
查看次数

Git-2-SVN迁移?

是的我知道.你为什么要从Git迁移到SVN?

好吧,我碰巧遇到需要将巨大的Git仓库迁移到Subversion的情况!根据Edwin的评论,这是我尝试过的一个工作流程:

首先创建一个本地SVN repo: svnadmin create svn_repo

接下来我看看我的Git回购: git clone git:myNameSpace/myProject

cd进入myProject并运行:

git svn init -s --prefix=svn/ file:///home/myHome/svn_repo/myProject

git svn fetch

git rev-list --parents master | grep '^.\{40\}$' 查找根提交的哈希值,并且只提供一个提交.

接下来是获取空主干提交的哈希值: git rev-parse svn/trunk

不幸的是,这个失败了:

fatal: ambiguous argument 'svn/trunk': unknown revision or path not in the working tree. Use '--' to separate paths from revisions

好吧,我不能在这之后走多远....

svn migration git git-svn

8
推荐指数
1
解决办法
9148
查看次数

在执行git-svn dcommit之前压缩或编辑一些提交?

我正在使用严格的签入策略在subversion存储库中处理项目,其中包括:每次提交到trunk都必须由另一个开发人员审核,这必须在提交消息中提及.

在使用git-svn时,我正在进行许多未经审核的增量git签到.他们的git commit消息反映了这一点.

使用git-svn但遵循svn存储库规则的最佳方法是什么?我应该将所有提交压缩成单个svn提交吗?我可以使用审阅者信息重写每个修订的提交消息吗?在执行git-svn dcommit之前,我可以"手动"将每个单独的更改移动到git master分支并修改每个更改的提交消息吗?

svn git version-control git-svn

7
推荐指数
2
解决办法
4729
查看次数

将现有git存储库推送到现有SVN存储库

我被要求一个学校项目通过将其推送到现有的 SVN存储库来提交我的工作.它是一个现有的存储库,其中已有一些文件.我不需要这些文件或以前的提交.

我一直在使用git存储库处理我的任务.我想将我的工作推向SVN存储库而不会丢失任何历史记录.我怎样才能做到这一点?

svn git git-svn

6
推荐指数
1
解决办法
2721
查看次数

保持svn存储库与git one同步

我和我的团队伙伴正努力让我们的svn存储库与我们的git存储库保持同步.我们正在开发一个项目,我们被要求在svn存储库(由assembla.com网站托管)上共享我们的代码.由于我们习惯使用git对我们的代码进行版本控制,因此我们决定充分利用git提供的git svn功能.为了分享我们的所有工作并将其分成正确的分支,我们还有一个远程存储库用于git(bitbucket).

到目前为止,我们使用git承诺的所有工作都没有给我们带来任何问题,但是在错误出现后同步svn存储库错误.

我按照这个答案将现有的git存储库推送到SVN以将svn存储库连接到git,但是在几次合并和提交之后,我收到了错误,我无法再拒绝更改.

现在我有一个分支,它是svn/trunk的副本

$ git checkout -b assembla_copy -t svn/trunk
  Branch assembla_copy set up to track local ref refs/remotes/svn/trunk.
  Switched to a new branch 'assembla_copy'

$ git svn rebase svn/trunk
Current branch assembla_copy is up to date.
Run Code Online (Sandbox Code Playgroud)

要与我的主分支同步它我都试图

git merge master
Run Code Online (Sandbox Code Playgroud)

git rebase master
Run Code Online (Sandbox Code Playgroud)

但是,当git rebase master开始应用自第一次提交以来的所有更改并提供大量冲突时(当我已经在svn/trunk中进行了此更改时,因为在某种程度上我设法将一些更改推送到在线存储库;我们是(目前为r r46),git merge master顺利但是当我提交时,所有的更改都只在一个提交中总结,它表明"合并分支'主人'成为assembla_copy",而我宁愿它将所有单独的提交提交(就像它在开始时那样......).

如果我从主分支中提交,则所有提交都是分开的,但是主分支是重新分配的,因此所有具有主提交作为父分支的分支显示为与主分支分开的分支.

您能否向我解释一下正确的工作流程,以便拥有一个镜像git存储库的svn存储库,其中所有工作都已完成(svn只是一个副本)? 您是否可以使用标准的git命令而不是复杂的bash脚本,就像我在上周搜索解决方案时在一些答案中看到的那样?

谢谢!

svn git git-svn git-merge git-rebase

5
推荐指数
1
解决办法
6125
查看次数

将现有的Git仓库推送到svn中的文件夹

我有一个现有的git存储库,我一直在努力.但是最近,我需要将提交推送到svn(不需要包含所有合并,但至少有一个线性主分支可以)

我不是很擅长git/svn,我只是一个普通的用户,使用SourceTree和CornerStone或者Tortoise,有很好的用户界面来做我的提交,分支和标记.我之前使用git-svn将svn repo迁移到git中,但从来没有反之亦然.

可能吗?我已经通过几个教程搜索,但没有一个工作.我也没有很好的与喜欢那些术语rebase,reflog等会很感激,如果有一些很好的指导来完成简单的事情,而不需要通过GIT中/ SVN的更复杂的部分学习.(简单,因为我猜必须有人面对同样的问题并且之前做过)

提前致谢!

svn git version-control git-svn

3
推荐指数
1
解决办法
1008
查看次数

使用SVN连接到git存储库

我正在使用git进行源代码管理.出于某些原因,我必须使用VisualParadigm作为我的UML图.

不幸的是VisualParadigm只支持SVN.是否可以通过SVN连接到git存储库或远程存储库?

svn git uml visual-paradigm

2
推荐指数
1
解决办法
2120
查看次数