ubuntugit服务器搭建
⑴ ubuntu不能联网怎么搭建git服务器
我使用的gogs+cetos6搭建git服务器,因为gogs搭建服务器比较简单
我给您大概说一下搭建过程
linux服务器上安装git
linux服务器上安装gogs
运行./gogs web ,然后可以通过浏览器访问: localhost:3000配置服务器.
最后是开启防火墙端口3000(gogs默认端口)
因为不熟悉Ubuntu,但是过程是一样的,您可以尝试一下 :)
⑵ 怎样在Ubuntu 14.04中搭建gitolite git服务器
相比gitosis,gitolite的功能更为强大,支持对权限的细分控制,学习一下在最新版
的ubuntu
14.04
LTS中搭建gitolite服务器是非常有必要的,嘿嘿,一会属于我们自己的GitHub就要出来了!
工具/原料
Ubuntu
14.04
LTS
gitolite
方法/步骤
首先这里我们安装openssh-server
openssh-client,如果你用的是VPS之类的一般都默认安装好了,不过运行一个这个命令不会有错的,如果有安装就会提示已安装。
sudo
apt-get
-y
install
openssh-server
openssh-client
安装git,在这个核心软件,不可或缺。
sudo
apt-get
-y
install
git
添加gitolite用户和同名用户组,加上--system参数,用户就不会在登陆界面显示。
sudo
adser
--system
--shell
/bin/sh
--group
--disabled-password
--home
/home/gitolite
gitolite
生成ssh
key,一路回车下来。
ssh-keygen
-t
rsa
将你当前用户的ssh
pub
key复制到/tmp下备用,由于我用的是桌面版在同一台机器上。
cp
~/.ssh/id_rsa.pub
/tmp/ubuntugege.pub
如果你是ssh远程登陆到服务器上安装,就要把你本地的key复制到远程的机器上
scp
~/.ssh/id_rsa.pub
gitolite.server:/tmp/ubuntugege.pub
安装gitolite,在ubuntu中已经集成了,不用自己去下载。
sudo
apt-get
-y
install
gitolite
切换到gitolite用户环境中,因为我要以gitolite用户身份去初始化安装。
sudo
su
-
gitolite
执行初始化安装gitolite。
gl-setup
/tmp/ubuntugege.pub
把管理库gitolite-admin克隆过来就可以开始gitolite用户及代码库的管理了,如果不能克隆,那么就说明初始化的ssh
pub
key错了,如图就是成功了。
git
clone
ssh://gitolite@localhost/gitolite-admin.git
⑶ ubuntu搭建git服务器 后上传的文件在服务器的什么位置
首先这里我们安装openssh-server openssh-client,如果你用的是VPS之类的一般都默认安装好了,不过运行一个这个命令不会有错的,如果有安装就会提示已安装。 sudo apt-get -y install openssh-server openssh-client 安装git,在这个核心软件,...
⑷ 如何用虚拟机ubuntu搭建git服务器配置 并可以按照网页访问
安装安装好后按照提示,配置用户名与邮箱
2
安装
3
随便进入一个git仓库, 如我的
开启git web服务: g
默认端口是1234, 在浏览器输入试吧。如果你的主机已经有自己的域名,把localhost 替换成你的域名试试吧.
⑸ 怎么在ubuntu创建git服务器
首先这里我们安装openssh-server openssh-client,如果你用的是VPS之类的一般都默认安装好了,不过运行一个这个命令不会有错的,如果有安装就会提示已安装。
sudo apt-get -y install openssh-server openssh-client
安装git,在这个核心软件,不可或缺。
sudo apt-get -y install git
添加gitolite用户和同名用户组,加上--system参数,用户就不会在登陆界面显示。
sudo adser --system --shell /bin/sh --group --disabled-password --home /home/gitolite gitolite
生成ssh key,一路回车下来。
ssh-keygen -t rsa
将你当前用户的ssh pub key复制到/tmp下备用,由于我用的是桌面版在同一台机器上。
cp ~/.ssh/id_rsa.pub /tmp/ubuntugege.pub
如果你是ssh远程登陆到服务器上安装,就要把你本地的key复制到远程的机器上
scp ~/.ssh/id_rsa.pub gitolite.server:/tmp/ubuntugege.pub
安装gitolite,在ubuntu中已经集成了,不用自己去下载。
sudo apt-get -y install gitolite
切换到gitolite用户环境中,因为我要以gitolite用户身份去初始化安装。
sudo su - gitolite
执行初始化安装gitolite。
gl-setup /tmp/ubuntugege.pub
把管理库gitolite-admin克隆过来就可以开始gitolite用户及代码库的管理了,如果不能克隆,那么就说明初始化的ssh pub key错了,如图就是成功了。
⑹ linux怎么搭建git服务器
GitHub就是一个免费托管开源代码的远程仓库。但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。
搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装。
假设你已经有sudo权限的用户账号,下面,正式开始安装。
第一步,安装git:
$ sudo apt-get install git
第二步,创建一个git用户,用来运行git服务:
$ sudo adser git
第三步,创建证书登录:
收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
第四步,初始化Git仓库:
先选定一个目录作为Git仓库,假定是/srv/sample.git,在/srv目录下输入命令:
$ sudo git init --bare sample.git
Git就会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。然后,把owner改为git:
$ sudo chown -R git:git sample.git
第五步,禁用shell登录:
出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
git:x:1001:1001:,,,:/home/git:/bin/bash
改为:
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。
第六步,克隆远程仓库:
现在,可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:
$ git clone git@server:/srv/sample.git
Cloning into 'sample'...
warning: You appear to have cloned an empty repository.
剩下的推送就简单了。
⑺ 如何在ubuntu系统上建立git仓库
一、 在 Ubuntu 系统中部署 Git Server
在Ubuntu系统中,这一步相当简单,只需要在Terminal中输入
sudo apt-get update
完成这一步后,就可以安装 git core 组件,通常情况下,安装在系统中的git 只是一个简单的客户端,包括一些最基本的命令以及特性,而作为保管代码的仓库,则还需要其他特性支持,所以需要安装 git core,如果之前已经安装了 git,那么仍然需要安装 git core
sudo apt-get install git-core
二、配置Git Server
完成这两步之后,就可以开始配置 Git Server 了。
增加 developers 组以及创建保存项目的仓库
需要创建一个新的用户组,并且将创建的仓库都放置在名为 git 的用户下,当然git 要隶属于 developers 组,这样也是为了方便将来的管理需要。
sudo groupadd developers
cd /home/
sudo mkdir git
sudo useradd git -d /home/git
以上四个命令分别为创建 developers 用户组, 并在/home/ 文件夹下为名为 git 的用户创建工作目录,创建名为 git 的用户账户并将它的工作目录指向/home/git。
之后,需要将增加的用户添加到 developers 用户组中,这一步一般通过修改/etc/group 文件达成,在正式修改 /etc/group 文件前或许需要先做一个备份。找到创建的用户组,譬如例子中创建的 developers。或许能在文件中看到类似的一行:
developers:x:1003:
将刚才创建的用户 git,添加到developers中,当然也可以添加其他的“开发者”,就像这样
developers:x:1003:git,tom,francklin,james
创建代码仓库,并修改权限。现在,回到创建好的工作目录 /home/git/,可能需要通过命令cd 来完成将工作路径由 /etc/ 切换为 /home/git/,然后让在 git 下创建一个新的仓库
sudo mkdir yourproject.git
sudo chgrp developers yourproject.git
sudo chmod g+rws yourproject.git
需要将创建的文件夹的所有人由 root 修改为 developers,这样当在本地上传代码至仓库时就不会遇到权限不够的问题。其次需要将仓库的所有权修改,也可以用“777”修改仓库的权限,不过不建议这样做。
sudo git init —bare —shared yourproject.git
在正式上传代码至仓库前,还需要对仓库进行初始化,请注意这里和平常使用方式的不同,—bare 指定创建的仓库为公共仓库,—shared 将使其他人都有权限将他们的代码提交至这个仓库中。
三、提交代码
使用SSH进行提交代码,需要在GIT Server上先安装SSH服务器,可以使用 apt-get 安装 SSH 服务器。
sudo apt-get install openssh-server
在服务器上安装好 ssh 之后,可以使用 ssh localhost 试着登录一下。在没做其他配置的情况下,一般会要求输入用户名和密码,之后会提示登录成功。可以在登录成功后,使用 ls -l 或者 ll 命令查看当前工作路径下有哪些文件和目录,之后,需要使用 exit 退出 ssh 登录。
在本地客户端上,可能需要创建隶属于 developers 组的用户,当然这一步并非必须。
$ sudo groupadd developers # 创建developers用户组
$ sudo mkdir -p /home/git # 创建主目录
$ sudo useradd git -d /home/git -g developers # 创建git用户,并制定其默认的工作路径和隶属的用户组
$ sudo passwd git # 为git设置密码
登录到系统,并使用 passwd username 为用户指定一个密码:
$ sudo passwd git # 为用户git指定密码为1234
之后你再次尝试一次,那么就会成功的把公钥发送给 GIT Server 了。可以使用 ssh [email protected] 试一试,看看能不能免密码登录至 GIT 服务器上。
完成这些后,就可以上传自己的代码、或者从 Git server 上拉取代码了。
git remote add origin [email protected]:/home/git/yourproject.git
git push origin master
四、可能出现的错误
如果出现了类似的错误
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: POSSIBLE DNS SPOOFING DETECTED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
The RSA host key for .net has changed,
and the key for the according IP address xx.xx.xxx.xxx
is unknown. This could either mean that
DNS SPOOFING is happening or the IP address for the host
and its host key have changed at the same time.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Please contact your system administrator.
Add correct host key in /Users/user/.ssh/known_hosts to get rid of this message.
Offending key in /Users/user/.ssh/known_hosts:5
RSA host key for .net has changed and you have requested strict
checking.
Host key verification failed.
处理方法是,删除客户端的 .ssh/known_hosts 文件。
⑻ 如何在Ubuntu上几步搭建Git Server
搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装。 假设你已经有sudo权限的用户账号,下面,正式开始安装。 第一步,安装git: $ sudo apt-get install git
⑼ 怎么在win10下访问搭建在ubuntu上的gitlab服务器
GitLab是由Ruby语言开发的基于Linux的Git服务器,是我见过的最强大的Git服务器。发现它之后,立即决定将Git服务器换成GitLab。但安装好GitLab之后面临一个问题,如何将服务器上的git项目直接导入到GitLab,之前的Git服务器是由是git+apache搭建的(详见在Linux上用Apache搭建Git服务器)。
在网上发现了这篇文档——Import bare repositories into your GitLab instance,并按之进行了操作。
1)设置存放代码库的主目录
vi /etc/gitlab/gitlab.rb
比如这里设置为:git_data_dir "/gitlab/repos"
2)访问刚搭建的GitLab站点,创建一个group,比如cnblogs。
这时会在 /gitlab/repos 下创建 /gitlab/repos/repositories/cnblogs 文件夹。
然后在/gitlab/repos/repositories/创建一个文件夹,比如cnblogs
3)将现有的所有git项目文件复制到这个文件夹
cp -r /data/git/* /gitlab/repos/repositories/cnblogs
4)修改一下复制过来的文件夹的所有者:
chown -R git:git /gitlab/repos/repositories/cnblogs
5)运行GitLab导入命令
cd /var/opt/gitlab
gitlab-rake gitlab:import:repos
等了一段时间之后,显示done,却一个项目也没导入进来。
经研究发现,在导入时,GitLab只认文件夹名以.git结尾的项目。于是,将要导入的项目文件夹名称加上.git后缀,再次进行导入。
结果显示导入成功,比如:
Processing cnblogs/CNBlogsJob.git
* Created CNBlogsJob (cnblogs/CNBlogsJob.git)
Done!
可以是GitLab站点上却看不到已导入的项目。多次努力,也没能解决这个问题。
后来,实在没办法,改为手动导入,导入方法如下:
1)在GitLab站点上创建与要导入的项目同名的项目。
2)进入刚创建的项目文件夹
cd /gitlab/repos/repositories/cnblogs/项目名称.git
3)删除该文件下的所有文件
rm -rf *
4)将要导入的项目文件夹下的所有文件复制过来
cp -r /data/git/CNBlogsJob/* /gitlab/repos/repositories/cnblogs/CNBlogsJob.git
就这样将项目一个一个地导入进来。
5)导入完成后,修改一下导入的所有项目的文件所有者
chown -R git:git /gitlab/repos/repositories/cnblogs
如果不修改所有者,客户端无法进行git push。
就这样手动地完成了现有Git项目的导入。
备注:操作系统是CentOS 6.2,GitLab版本是7.8.4。