将整个android存储库导入GitLab

时间:2014-10-20 10:56:16

标签: git gitlab

我想创建整个android存储库的副本(使用repo工具) 有没有一种简单的方法将源复制到我自己的GitLab服务器中?

2 个答案:

答案 0 :(得分:0)

即使android repo使用repo tool,你也会得到一个常规的git repo,因为像repo sync这样的命令就像git clone

只需在GitLab服务器上创建一个空仓库,然后转到您当地的仓库,然后:

git remote add gitlab /url/of/your/gitlab/repo
git push --mirror gitlab

答案 1 :(得分:-1)

我想长时间解决这个问题。我认为有同样问题的人少了。因为你应该是一个Android系统开发人员而不仅仅是一个简单的git用户可以解决这个问题。

There是一种很好的方法。

Import bare repositories into your GitLab instance
Notes
The owner of the project will be the first admin
The groups will be created as needed
The owner of the group will be the first admin
Existing projects will be skipped
How to use
Create a new folder inside the git repositories path. This will be the name of the new group.
For omnibus-gitlab, it is located at: /var/opt/gitlab/git-data/repositories by default, unless you changed it in the /etc/gitlab/gitlab.rb file.
For installations from source, it is usually located at: /home/git/repositories or you can see where your repositories are located by looking at config/gitlab.yml under the gitlab_shell => repos_path entry.
New folder needs to have git user ownership and read/write/execute access for git user and its group:

sudo -u git mkdir /var/opt/gitlab/git-data/repositories/new_group
If you are using an installation from source, replace /var/opt/gitlab/git-data with /home/git.

Copy your bare repositories inside this newly created folder:
sudo cp -r /old/git/foo.git /var/opt/gitlab/git-data/repositories/new_group/

# Do this once when you are done copying git repositories
sudo chown -R git:git /var/opt/gitlab/git-data/repositories/new_group/
foo.git needs to be owned by the git user and git users group.

If you are using an installation from source, replace /var/opt/gitlab/git-data with /home/git.

Run the command below depending on your type of installation:
Omnibus Installation

$ sudo gitlab-rake gitlab:import:repos
Installation from source

Before running this command you need to change the directory to where your GitLab installation is located:

$ cd /home/git/gitlab
$ sudo -u git -H bundle exec rake gitlab:import:repos RAILS_ENV=production
Example output

Processing abcd.git
 * Created abcd (abcd.git)
Processing group/xyz.git
 * Created Group group (2)
 * Created xyz (group/xyz.git)
[...]