仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 587|回复: 8
打印 上一主题 下一主题

[CentOS(社区)] 来一发CentOS下搭建Git办事器Gitosis

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 20:33:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!
1.编译装置git



Sql代码

1$wgethttp://kernel.org/pub/software/scm/git/git-1.7.3.tar.gz#今朝最新版本

2$tar-xzvfgit-1.7.3,tar.gz#解压出来

3$cdgit-1.7.3#进进目次

4$yuminstall-ygettext-develexpat-develcurl-develzlib-developenssl-devel#-y是默许主动装置,装置编译时用到的东东

5$./configure--with-curl=/usr/local#git装置路径

6$make&&makeinstall#最小化装置的CentOS是没有make的,能够yuminstallmake举行装置

7$git--version#检察版本号,的确git是不是装置乐成



2.装置gitosis



Sql代码

1$yuminstallpythonpython-setuptools

2$gitclonegit://eagain.net/gitosis.git

3$cdgitosis

4$pythonsetup.pyinstall




3.在开辟呆板上天生大众密钥(用来初始化gitosis)



Sql代码

1$ssh-keygen-trsa#不必要暗码,一起回车就行(在当地操纵)

2$scp~/.ssh/id_rsa.pubroot@***:/tmp/#上传你的sshpublickey到办事器


当git中碰到如许的成绩时分
Agentadmittedfailuretosignusingthekey.
Permissiondenied(publickey).

运转:ssh-add就能够了



4.初始化gitosis



Sql代码

1$addusergit#新增一个git用户

2$su-git#切换倒git用户下

3$gitosis-init</tmp/id_rsa.pub#id_rsa.pub是方才传过去的

4$rm/tmp/id_rsa.pub#id_rsa.pub已无用,可删除.



5.猎取并设置gitosis-admin



Sql代码

01$gitclonegit@***:gitosis-admin.git#在当地实行,猎取gitosis办理项目

02$vigitosis-admin/gitosis.conf#编纂gitosis-admin设置文件

03#在gitosis.conf底部增添

04[group组名]

05writable=项目名

06members=用户#这里的用户名字要和keydir下的文件名字相分歧

07#VI下按ZZ(年夜写)两次会实行主动保留并加入,完成后实行

08$gitcommit-a-m“***xx”#要记着的是,每次增加新文件必需实行gitadd.,大概gitaddfilename,假如没有新加文件,只是修正的话就能够实行此句。

09#修正了文件今后必定要PUSH到办事器,不然不会失效。

10$gitpush


在windows下用git-bash天生密钥对ssh-keygen-trsa

1.在A机下天生公钥/私钥对。

[chenlb@A~]$ssh-keygen-trsa-P


-P暗示暗码,-P就暗示空暗码,也能够不必-P参数,如许就要三车回车,用-P就一次回车。
它在/home/chenlb下天生.ssh目次,.ssh下有id_rsa和id_rsa.pub。

2.把A机下的id_rsa.pub复制到B机下,在B机的.ssh/authorized_keys文件里,我用scp复制。
[chenlb@A~]$scp.ssh/id_rsa.pubchenlb@192.168.1.181:/home/chenlb/id_rsa.pub
chenlb@192.168.1.181spassword:
id_rsa.pub100%2230.2KB/s00:00


因为还没有免暗码登录的,以是要输出暗码。

3.B机把从A机复制的id_rsa.pub增加到.ssh/authorzied_keys文件里。
[chenlb@B~]$catid_rsa.pub>>.ssh/authorized_keys
[chenlb@B~]$chmod600.ssh/authorized_keys


authorized_keys的权限如果600


windows客户端要用tortorisePLink的体例毗连,并用设置repo的时分,要写全体路径,而且不要加上分支名git@88.88.88.88:repositories/hello.git

cdrepositories
  1. gitinit--bareproject1.git
复制代码
新建项目
到此步就算完成gitosis的初始化了。接上去的是新建一个新项目到办事器的操纵,如第5步中设置gitosis.conf文件增加的是
Sql代码
01[groupproject1]#组称号
02writable=project1#项目称号
03members=***#用户名***为[groupgitosis-admin]中的members一样

04#记得实行
Sql代码
01$gitcommit-a-m“增加新项目project1,新项目标目次是project1,该项目标成员是***“#“”里的内容自定
02$gitpush

07#进进到项目目次
Sql代码
01$cd/home/用户/project1#project1要与gitosis.conf文件设置分歧
02$gitinit
03$gitadd.#新增文件寄望前面有一个点
04$gitcommit-a-m“初始化项目project1&Prime;

12#然后就到把这个项目放到办事器上往
Sql代码
01$gitremoteaddorigingit@***:project1.git#***为办事器地点
02$gitpushoriginmaster

15#也能够把下面的两步分解一步
Sql代码
01$gitpushgit@***:project1.gitmaster


7.创立新的repositories
翻开gitosis.conf文件,你将看到
[groupgitosis-admin]
writable=gitosis-admin
members=elton@macbook
这个是办理组的权限,members中的用户名就是方才上传的公钥内里的用户名。
在这个文件前面到场:
[groupmyteam]
members=elton@macbook
writable=free_monkey
这里你界说了一个叫myteam的组,授与elton@macbook这个用户写“free_monkey”这个repo的权限
gitcommit-a-m"Alloweltonwriteaccesstofree_monkey"
gitpush
下面的操纵就更新了办事真个权限。
上面就入手下手创立free_monkey的repo
mkdirfree_monkey
cdfree_monkey
gitinit
创立.gitignore文件,用于疏忽某些不必要举行代码办理的内容,如rails的使用大概以下:
.DS_Store
log/*.log
tmp/**/*
config/database.yml
db/*.sqlite3
提交卸码:
gitremoteaddorigingit@YOUR_SERVER_HOSTNAME:free_monkey.git
gitadd.
gitcommit-a-m"initialimport"
gitpushoriginmaster:refs/heads/master
接上去,能够增添成员的公钥到体系中了
cdgitosis-admin
cp~/alice.pubkeydir/
cp~/bob.pubkeydir/
gitaddkeydir/alice.pubkeydir/bob.pub
修正gitosis.conf
[groupmyteam]
-members=jdoe
+members=jdoealicebob
writable=free_monkey
提交修正:
gitcommit-a-m"GrantedAliceandBobcommitrightstoFreeMonkey"
gitpush
别的成员就能够猎取代码了
gitclonegit@YOUR_SERVER:free_monkey.git


如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!
冷月葬花魂 该用户已被删除
沙发
发表于 2015-1-16 20:19:22 | 只看该作者

来一发CentOS下搭建Git办事器Gitosis

未来的学习之路将是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。
若天明 该用户已被删除
板凳
发表于 2015-1-24 15:45:30 | 只看该作者
硬盘安装及光盘安装,清楚了解安装Linux应注意的有关问题,如安装Linux应在最后一个分区内,至少分二个分区。
金色的骷髅 该用户已被删除
地板
发表于 2015-2-2 11:03:14 | 只看该作者
熟读Linux系统有关知识,如系统目录树,有关内容可购书阅读或搜索论坛。
5#
发表于 2015-2-7 19:31:03 | 只看该作者
把这个问题放在其他Linux社区请求帮助也是一种选择。如果Linux得不到答案,请不要以为我们觉得无法帮助你。有时只是看到你问题的人不知道答案罢了。这时换一个社区是不错的选择。
只想知道 该用户已被删除
6#
发表于 2015-2-23 13:50:39 | 只看该作者
硬盘安装及光盘安装,清楚了解安装Linux应注意的有关问题,如安装Linux应在最后一个分区内,至少分二个分区。
变相怪杰 该用户已被删除
7#
发表于 2015-3-7 10:32:30 | 只看该作者
有疑问前,知识学习前,先用搜索。
兰色精灵 该用户已被删除
8#
发表于 2015-3-15 04:42:16 | 只看该作者
首先Linux是开源的,这也是最主要的原因,想学windows,Unix,对不起我们没源代码。也正是因为这样,Linux才能够像滚雪球一样越滚越大,发展到现在这种规模。
不帅 该用户已被删除
9#
发表于 2015-3-21 21:37:14 | 只看该作者
熟悉操作是日常学习Linux中的三大法宝。以下是作者学习Linux的一些个人经验,供参考:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 01:15

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表