AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 585598
Accepted
Torxed
Torxed
Asked: 2014-04-01 01:50:53 +0800 CST2014-04-01 01:50:53 +0800 CST 2014-04-01 01:50:53 +0800 CST

将 repo 从普通 git 移动到 GitLab 服务器

  • 772

我有两台服务器,一台运行普通的旧服务器,git在/opt/. 这些项目现在将被转移到一个新的服务器上,我选择在该服务器上运行gitlabGUI 并能够邀请朋友学习编程并有一个更容易查看和管理项目的地方。

但是,在搬家时,我想保留旧代码库的修订版。不知何故,我认为只是做scp -r old-server.net:/opt/project.git /gitlab/就足够了,但这失败了。

我导航到gitlab并创建了一个新的 repo,只是为了获取创建 wiki 的文件夹结构和一个代码文件夹/gitlab/project.git,该文件夹结构与旧服务器上的文件夹结构相同(显然没有代码),并且项目可以正常加载gitlab,但是然后我做了rm -rf project.git并且做了scp ...现在我得到一个500 We're sorry, but something went wrong..

我的猜测是服务器文件夹中的修订和可能的 URL 是错误的,但我无法通过手动浏览文件或通过 gitlab 上的文档找到任何内容。

有人做过类似的事情吗?

先感谢您!

git
  • 3 3 个回答
  • 8608 Views

3 个回答

  • Voted
  1. Marc Stürmer
    2014-08-07T11:59:45+08:002014-08-07T11:59:45+08:00

    将新的 gitlab 远程添加到您现有的存储库并推送:

    git 远程添加 gitlab url-to-gitlab-repo

    git push gitlab 大师

    • 3
  2. Best Answer
    Torxed
    2014-04-01T02:24:55+08:002014-04-01T02:24:55+08:00

    通常最简单的基本解决方案可以工作......权限,请始终检查您的权限。

    chown -R git.git /gitlab/project.git/
    
    • 2
  3. fcm
    2019-07-06T03:42:40+08:002019-07-06T03:42:40+08:00

    我假设您有一些想要包含在 GitLab 实例中的存储库。

    GitLab 提供了一种批量方法来执行此操作。我添加了大约 250 个没有问题的存储库。将你的 git 文件复制到 GitLab 服务器上的新位置,我将使用一个名为“import”的目录。如果您需要项目中的子位置,您可以添加“XXX”(甚至 XXX/YYY):

    # Use sudo as needed, but it's important to do this
    # using the same username than the final GitLab repo.
    rsync -av /your/repo/location/* ./import/XXX
    # give GitLab  full access
    chown git:git ./ -R
    # Later GitLab will modify the source and turn into a bundle
    chmod 02777 -R ./*.git
    # now the real work. Note that the source is import and not import/XXX
    gitlab-rake gitlab:import:repos['./import/']
    

    现在刷新您的 GitLab gui,导入的项目将可见。就我而言,我有一些旧的钩子,现在在 GitLab 上已弃用,因此,我批量删除了新创建的 git 文件上的所有内容。(否则你会在推送时收到错误消息)。

    • 1

相关问题

  • 如何使用 Gitosis 删除 Git 存储库

  • Git 和 Mercurial

  • 如何修复 git 中第一次提交的元信息?

  • 如何编辑 git 的历史记录以更正不正确的电子邮件地址/名称 [关闭]

  • git如何控制访问权限

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve