Gitolite如何导入其它git代码库

简介:

续上节,我们配置了ubuntu Gitolite管理git server代码库权限

在这里测试下Gitolite如何导入其它git代码库

要求:原服务器有sdk.git项目,我们导入到Gitolite并配置权限管理。


停止原服务器对sdk.git的操作,将代码库直接打包

1
git@ubuntu: /git tar  -zcf sdk. tar .gz sdk.git


将sdk.tar.gz传到Gitolite服务器,我传到/tmp下面


Gitolite管理服务器上执行


  1. 先添加同名的项目

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
[gitadmin@apdn1 conf]$  vi  gitolite.conf 
repo    gitolite-admin
         RW+     =   gitadmin
 
repo    testing
         RW+     =   @all
 
 
repo sdk                            #sdn名称与要导入的项目名一样
      RW+ = gitadmin                 #授于用户权限
      
      
[gitadmin@apdn1 gitolite-admin]$ git add .
[gitadmin@apdn1 gitolite-admin]$ git commit -m  "add sdk repo"
[master 1245da2] add a new repo
  Committer: sunny <sunny@apdn1.(none)>
Your name and email address were configured automatically based
on your username and  hostname . Please check that they are accurate.
You can suppress this message by setting them explicitly:
 
     git config --global user.name  "Your Name"
     git config --global user.email you@example.com
 
If the identity used  for  this commit is wrong, you can fix it with:
 
     git commit --amend --author= 'Your Name <you@example.com>'
 
  1 files changed, 3 insertions(+), 1 deletions(-)
[gitadmin@apdn1 gitolite-admin]$ git push
Counting objects: 7,  done .
Delta compression using up to 4 threads.
Compressing objects: 100% (3 /3 ),  done .


Gitolite服务器


2.导入git代码库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
进入到gituser的项目库目录 /home/gituser/repositories
 
gituser@ubuntu:~ /repositories ls
gitolite-admin.git  sdk.git  testing.git
 
可以看到我们刚刚建的sdk.git项目已经存在
我们只需要清空里面的文件
gituser@ubuntu:~ /repositories rm  -rf sdk.git/*
 
然后将我们刚刚传到 /tmp/sdk . tar .gz解压后拷贝过来
 
gituser@ubuntu: /tmp tar  -zxf sdk. tar .gz
gituser@ubuntu: /tmp cd  sdk.git
gituser@ubuntu: /tmp/sdk .git$  mv  /home/gituser/repositories/sdk .git/


3.测试

sdk项目只有gitadmin有权限操作

1
2
3
4
5
6
7
8
9
10
[gitadmin@apdn1 tmp]$ git clone gituser@192.168.1.50:sdk
Initialized empty Git repository  in  /tmp/sdk/ .git/
remote: Counting objects: 34,  done .
remote: Compressing objects: 100% (32 /32 ),  done .
remote: Total 34 (delta 8), reused 0 (delta 0)
Receiving objects: 100% (34 /34 ), 17.92 KiB,  done .
Resolving deltas: 100% (8 /8 ),  done .
 
顺利拉取成功。
其它修改,提交正常。还有就是之前代码库所有的日志记录也存在。

好了,以上就是Gitolite如何导入其它git代码库。

gitolite功能不错,其它功能后续再续写了。



本文转自 jackjiaxiong 51CTO博客,原文链接:http://blog.51cto.com/xiangcun168/1703506

相关文章
|
3月前
|
存储 Java 开发工具
WinServer服务器上搭建Git代码库
本文介绍如何在WinServer服务器上搭建Git代码库。
73 0
|
存储 Java Devops
为啥我的代码库那么大?聊聊Git使用坏习惯
阿里代码平台开发同学 在阿里内网吐槽贴 本文作者用幽默又真实的文字总结了开发者日常工作中遇到的那些事儿。
为啥我的代码库那么大?聊聊Git使用坏习惯
|
算法 安全 Shell
使用Gitolite搭建Git服务器
Git 服务的管理工具,主要有如下几种。 Gitosis- 轻量级, 开源项目,使用 SSH 公钥认证,只能做到库级的权限控制。目前项目已经停止开发,不再维护。 Gitolite - 轻量级,开源项目
414 0
使用Gitolite搭建Git服务器
|
网络安全 开发工具 数据安全/隐私保护
CentOS6.9搭建Git服务器并使用Gitolite配置权限
这篇笔记记录了在CentOS6.9中yum搭建Git服务器,并使用Gitolite管理权限的详细过程,如本机密钥生成,通过config文件管理本机多密钥,免密码ssh认证,Gitolite管理权限,分支和用户权限配置等
5235 0
|
Devops 开发工具 git
【下一代核心技术DevOps】:(三)私有代码库阿里云Git使用
  1. 引言    使用DevOps肯定离不开和代码的集成。所以要想跑通整套流程,代码库的选型也是非常重要的。否则无法实现持续集成。目前比较常用的代码管理有SVN和GIt    如果还使用SVN的,建议尽早迁移到Git上面,不然很费劲的。
1413 0
|
Shell 网络安全 开发工具
crontab定时运行git命令 更新代码库
Q:  http://stackoverflow.com/questions/7994663/git-push-via-cron    I'm trying to run a git push from cron.
972 0
|
14天前
|
缓存 数据可视化 网络安全
Git命令大全
Git命令大全
46 1