情感美文

当前位置:首页 > 情感控制 > Ubuntu完美安装搭建Git服务器

Ubuntu完美安装搭建Git服务器

时间:2019-08-13 整理:本站 点击:24次
一、安装git服务器所需软件打开终端输入以下命令:ubuntu:~$sudoapt-getinstallgit-coreopenssh-serveropenssh-clientgit-core...

	Ubuntu完美安装搭建Git服务器

一、安装git服务器所需软件打开终端输入以下命令:ubuntu:~$sudoapt-getinstallgit-coreopenssh-serveropenssh-clientgit-core是git版本控制核心软件安装openssh-server和openssh-client是由于git需要通过ssh协议来在服务器与客户端之间传输文件然后中间有个确认操作,输入Y后等待系统自动从镜像服务器中下载软件安装,安装完后会回到用户当前目录。

如果安装提示失败,可能是因为系统软件库的索引文件太旧了,先更新一下就可以了,更新命令如下:ubuntu:~$sudoapt-getupdate更新完软件库索引后继续执行上面的安装命令即可。 安装python的setuptools和gitosis,由于gitosis的安装需要依赖于python的一些工具,所以我们需要先安装python的setuptools。 执行下面的命令:ubuntu:~$sudoapt-getinstallpython-setuptools这个工具比较小,安装也比较快,接下来准备安装gitosis,安装gitosis之前需要初始化一下服务器的git用户信息,这个随便填。 ubuntu:~$"myname"ubuntu:~$"******"初始化服务器用户信息后,就可以安装gitosis了,gitosis主要是用于给用户授权,设置权限也算是很方便的。 可以通过以下命令获取gitosis版本文件ubuntu:~$gitclonehttps:///res0nat0r/注意:中间有两个是数字零获取gitosis文件后,进入到文件目录下面ubuntu:/tmp$cdgitosis/接着使用python命令安装目录下的的python脚本进行安装ubuntu:/tmp/gitosis$到这里,整个安装步骤就完成了,下面就开始对git进行一些基本的配置。

二、创建git管理员账户、配置git创建一个账户(git)作为git服务器的管理员,可以管理其他用户的项目权限。

ubuntu:/tmp/gitosis$sudouseradd-mgitubuntu:/tmp/gitosis$sudopasswdgit然后再/home目录下创建一个项目仓库存储点,并设置只有git用户拥有所有权限,其他用户没有任何权限。 ubuntu:/tmp/gitosis$sudomkdir/home/gitrepositoryubuntu:/tmp/gitosis$sudochowngit:git/home/gitrepository/ubuntu:/tmp/gitosis$sudochmod700/home/gitrepository/由于gitosis默认状态下会将仓库放在用户的repositories目录下,例如git用户的仓库地址默认在/home/git/repositories/目录下,这里我们需要创建一个链接映射。

让他指向我们前面创建的专门用于存放项目的仓库目录/home/gitrepository。

ubuntu:/tmp/gitosis$sudoln-s/home/gitrepository/home/git/repositories这里我将在服务器端生成ssh公钥,如果想在其他机器上管理也可以在其他机器上生成一个ssh的公钥。

ubuntu:/home/git$ssh-keygen-trsa这里会提示输入密码,我们不输入直接回车即可。 然后用刚生成公钥id_来对gitosis进行初始化。 向gitosis添加公钥并初始化:$cp~/.ssh/id_/tmp$sudo-H-ugitadmingitosis-init/tmp/id_出现如上信息说明gitosis已经初始化成功。

gitosis主要是通过仓库来管理一些配置文件的,如用户权限的管理。

这里我们需要对其中的一个post-update文件添加可执行的权限。

ubuntu:/home/git$sudochmod755/home/gitrepository//hooks/post-update三、服务器上创建项目仓库使用git账户在服务器上创建一个目录()并初始化成git项目仓库。 ubuntu:/home/git$sugit$cd/home/gitrepository$$$exit如果出现以下信息就说明已经成功创建了一个名为的项目仓库了,新建的这个仓库暂时还是空的,不能被客户端clone,还需要对gitosis进行一些配置操作。

四、使用gitosis管理用户操作项目的权限首先需要在前面生成ssh公钥(用来初始化gitosis)的机器上将的仓库clone下来。

在客户端机器上新建一个目录用于存放仓库ubuntu:~$mkdirgitadminubuntu:~$cdgitadmin/ubuntu:~/gitadmin$:正确会显示以下信息clone下来会有一个的配置文件和一个keydir的目录。 用于配置用户的权限信息,keydir主要用户存放ssh公钥文件(一般以用户名.pub命名,配置文件中需使用相同用户名),用于认证请求的客户端机器。

现在让需要授权的用户使用前面的方式各自在其自己的机器上生成相应的ssh公钥文件,管理员把他们分别按用户名命名好,复制到keydir目录下。 ubuntu:~$cp/home/aaaaa/Desktop//home/aaaaa/gitadmin/gitosis-admin/keydir/ubuntu:~$cp/home/aaaaa/Desktop//home/aaaaa/gitadmin/gitosis-admin/keydir/继续编辑文件[gitosis][groupgitosis-admin]####管理员组members=charnubuntu####管理员用户名,需要在keydir目录下找到相应的.pub文件,多个可用空格隔开(下同)writable=gitosis-admin####可写的项目仓库名,多个可用空格隔开(下同)[grouptestwrite]####可写权限组members=zhangsan####组用户writable=mytestproject####可写的项目仓库名[grouptestread]####只读权限组members=lisi####组用户readonly=mytestproject####只读项目仓库名因为这些配置的修改只是在本地修改的,还需要推送到服务器中才能生效。

ubuntu:~/gitadmin/gitosis-admin$:~/gitadmin/gitosis-admin$gitcommit-am"addauserpermission"ubuntu:~/gitadmin/gitosis-admin$gitpushoriginmaster推送成功会显示下面提示信息又是后新增的用户不能立即生效,这时候需要重新启动一下sshd服务ubuntu:~/gitadmin/gitosis-admin$sudo/etc//sshrestart现在,服务端的git就已经安装和配置完成了,接下来就需要有权限的组成员在各自的机器上clone服务器上的相应项目仓库进行相应的工作了。 五、客户端(windows)使用git下载安装windows版本的git客户端软件,下载地址:http:///安装完成后右键菜单会出现几个git相关的菜单选项,我们主要使用其中的gitbash通过命令行来进行操作。 在本地新建一个目录,使用git初始化这个目录,然后再里面新建一个文本文件用于测试,最后关联到git服务器仓库中的相关项目,最后上传本地版本到服务器。 $mkdirtestgit$cdtestgit$gitinit$echo"thisisatesttextfile,willpushtoserver"$gitadd.$gitcommit-am"initabaseversion,addafirstfileforpushtoserver"$gitremoteaddorigingitserverip:$gitpushoriginmaster这样服务端就创建好了一个的仓库的基础版本了,现在其他组员只要从服务端进行clone就可以了。 window下面进入到需要克隆的本地目录下面右键选择gitbash选项,输入$gitclonegitserverip:就可以把项目clone到本地仓库了。 下面进行简单的修改和提交操作$cdmytestproject$echo"thisisanothertextfilecreatedbyother"$gitadd.$gitcommit-am"addaanotherfilebyother"$gitpushoriginmaster最后推送到服务器成功会显示如下信息postedon2018-03-1315:35阅读(216)。

------分隔线----------------------------

本月热点

  • “习书记主政宁德时就推戴出聚精会神的教师欢娱”BR——习大大在宁德(三)
  •    采访恶积祸盈:李育兴,1943年11月生,福州市人。 前后倚马可待福安县委书记、宁德地委委员兼秘书长、福开顽慎重省委副秘书长兼省委党史愚弄室主任、办公厅主任。 采访组:田玉珏薛伟江...

  • 无性婚姻会员糖炒栗子的交友信息
  •    四川·无性婚姻/形婚:首先我说一下,我现在在工地干活(大理石安装)应为小时候那里受过伤所以对性是基本没什么要求的。 我呢人长的也不好看,但是我对人有一颗热忱的心。 …吉林·无性婚姻...

  • 中国传媒大学教授曾庆瑞
  •    当前位置:>>>中国传媒大学教授曾庆瑞中国传媒大学教授曾庆瑞时间:2017-07-2419:29来源:未知作者:小钧点击:次【中国传媒大学考研网导师信息】中国传媒大学教授曾庆瑞唯一权威的中国传...

  • 我那时失踪落的伤感周记作文
  •    冬至是阴阳二气的自然转化,也是上天赐予的福泽。 掀开历史,唐宋时,冬至是祭天祭祖的日子,皇帝在此日要到郊外进行祭天算夜典。 苍生呢,冬至节祭神祭祖先,繁忙而盛大。 我年少时,...

  • 企业微信营销模式研究
  •    摘要第4-5页Abstract第5-6页1绪论第11-19页研究背景与意义第11-15页国内外研究概况第15-16页研究方法与研究内容第16-19页2微信与微信营销概述第19-29页微信概述第...

  • 找你妹游戏电脑版找你妹电脑版下载
  •    [Android]游戏介绍:达龙云电脑官网下载,电脑手机硬件太老跑不动游戏怎么办,达龙云电脑帮您忙!只需要安装达龙云电脑,您将用低配置电脑或者手机玩各种游戏大作,简直是游戏娱乐的神器!大小:星...

  • 江苏无性婚姻交友信息
  •    ·33岁·177CM·江苏泰州·寻找:无性婚姻我们可以一起旅游,一起做喜欢做的事情,生病了相互的照顾,扶持,心灵的扶持,不在寂寞,因为有爱,一直到老,其实最好的日子,无非是你在闹,我在笑,如此...

  • 关于市场管理的工作总结 感受的概念
  •    【范文一:市场管理工作总结】 回首过去的这半年,在新的岗位新的环境中尽快的进入了角色和出色的工作状态。 让自己始终保持良好的工作状态,从各方面严格要求自己,时刻要有一种危机感。 ...

  • 环球时报:建立不可靠实体清单制度传递两大信号
  •    蓝营人士:台当局想提升国际参与,根本上需要大陆谅解与默认##########原标题:蓝营人士:台当局想提升国际参与,根本上需要大陆谅解与默认【环球时报驻台北特约记者崔明轩】就在中美角力升级之际...

  • 苏教版小学数学三年级下册期末册试题
  •    数学三年级下册期末册试题一、填空(第空分,共12分)1.一年有()个月,其中()月是大月,()月是小月。 平年一年()天,闰年一年()天。 2.在( )中填上合适的单位大楼高30...

网站地图 | 由情感美文提供的文章均由网友转载于网络,若本站转载中的文章侵犯了您的权益,请与本站管理员联系. Copyright © 2006-2019 www.ch8234.com情感美文_情感电台 All Rights Reserved.