搭建git环境

前言

整篇文章基本与网上很多教程一致,我根据我个人踩过的坑和理解在文中添加了一些注解。

环境

服务器

ubuntu16.04 pthon2.7 git2.7.4(ubuntu)

客户端

Windows10 git2.15.1.windows2

安装

服务器

安装git

sudo apt-get install git-core 

安装ssh,因为git使用ssh协议来传输

sudo apt-get openssh-server openssh-client

安装python的setuptools和gitosis,由于gitosis的安装需要依赖于python的一些工具,所以我们需要先安装python的setuptools。

执行下面的命令:

sudo apt-get install python-setuptools

初始化一下服务器的git用户信息

git config --global user.name "myname"
git config --global user.email "******@gmail.com"

获取gitosis

git clone https://github.com/res0nat0r/gitosis.git

获取gitosis文件后,进入到文件目录下面

cd gitosis/

接着使用python命令安装目录下的setup.py的python脚本进行安装

sudo python2 setup.py install

**注意,这里要使用python2.x来安装 **

到这里,整个安装步骤就完成了git 的环境,下面进行配置

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

ubuntu:/tmp/gitosis$ sudo useradd -m git
ubuntu:/tmp/gitosis$ sudo passwd git

这里的用户是ubuntu的用户,不是git的用户,创建完后可以使用“git”这个用户名登陆ubuntu系统了

然后再/home目录下创建一个项目仓库存储点,并设置只有git用户拥有所有权限,其他用户没有任何权限。

ubuntu:/tmp/gitosis$ sudo mkdir /home/gitrepository
ubuntu:/tmp/gitosis$ sudo chown -R git:git /home/gitrepository/

你创建的git仓库都要使用上面语句进行授权,不然会报错

环境配置完毕,可以正常使用git了,这里还没有讲到免密登陆配置公钥私钥的问题,这里我感觉比较复杂,后面再讲,在现在的情况下,你仍可以通过输入git用户的密码来使用git,有点麻烦。

客户端

安装 Git-2.15.1.2-64-bit.exe
下载地址

安装完右键任意文件夹 看到 Git Gui Here 和 Git Bash Here说明安装成功了

使用git

创建服务器仓库

在服务器上创建一个git项目仓库(mytestproject.git),并授权

ubuntu:/home/git$ cd /home/gitrepository    
ubuntu:/home/git$ git init --bare mytestproject.git 
ubuntu:/home/git$ sudo chown -R git:git mytestproject.git 

PS:裸仓库的意思是这个仓库内,也就是mytestproject.git文件夹内不会有任何文件,不管你客户端提交了多少文件到这个仓库内,mytestproject.git 文件夹内都不会显示任何文件,这个裸仓库只会记录文件的信息,不会将文件信息以文件的方式存在这个目录下。而非裸仓库,就会讲仓库内记录的文件存储在文件目录内。

生成好仓库以后,就可以使用客户端访问了

客户端访问

clone生成同步文件夹方式

新建一个文件夹,用于存放同步的文件
在这个文件夹内右键,选择Git Bash Here
输入

git clone ssh://git@xx.xx.xx.xx:xxxx/home/gitrepository/mytestproject.git

注意:xx.xx.xx.xx 是你的服务器ip地址,

:XXXX冒号后面是你服务器ssh协议的端口号,默认是22,如果你是默认的,就可以不填

"git@"中的git是你在ubuntu下创建的用户的用户名,如果你不想使用git用户,那么你就要讲@前面的“git”换成你想要使用的用户名。

顺利的话,你就成功的同步成功啦

使用现有项目文件夹,同步

在现有文件夹下右键,选择Git Bash Here
输入

git init

设置远端地址

git remote add origion ssh://git@xx.xx.xx.xx:xxxx/home/gitrepository/mytestproject.git

然后你就可以将这个目录push到服务器上啦
当然,不要忘了先add再commit最后再push

git add -A #添加当前所有文件
git commit -m "init"
git push origin master

成功推到服务器了

定义自动同步文件夹

自动同步主要用到的是git的钩子功能(hook)
假定我们需要做到的是:服务器上的mytestproject.git仓库一接收到推送(push)
就立马同步到/home/mytest 文件夹中去

首先创建好mytest 文件夹

mkdir /home/mytest

然后赋予git用户操控它的权限

sudo chown -R git:git /home/mytest 

进入到mytestproject.git的钩子文件夹

cd /home/gitrepository/mytestproject.git/hooks

定义一个名为post-recive文件

vi post-receive

输入一下内容

#!/bin/bash
git --work-tree=/home/mytest checkout -f

尝试push一下仓库,你就会发现/home/mytest文件夹下面都是你的工程文件啦

在MacBook上搭建Git环境可以按照以下步骤进行: ### 检查是否已安装Git 打开“终端”应用程序,在终端中输入以下命令并回车: ```bash git --version ``` 如果系统已经安装了Git,会显示当前安装的Git版本号。若显示“command not found”,则表示未安装Git,需要进行安装。 ### 安装Git #### 使用Homebrew安装(推荐) 如果还未安装Homebrew,先在终端中执行以下命令安装: ```bash /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` 安装完成后,在终端中输入以下命令安装Git: ```bash brew install git ``` #### 通过安装包安装 访问Git官方下载页面(https://git-scm.com/download/mac ),下载最新的Git安装包。下载完成后,双击安装包,按照安装向导的提示完成安装。 ### 配置Git 安装完成后,需要配置用户信息,包括用户名和邮箱。在终端中依次执行以下命令: ```bash git config --global user.name "Your Name" git config --global user.email "your_email@example.com" ``` 将`"Your Name"`替换为你的真实姓名,`"your_email@example.com"`替换为你的邮箱地址。 ### 验证安装和配置 再次在终端中输入`git --version`,确认Git已成功安装。还可以通过以下命令查看配置信息: ```bash git config --list ``` 如果输出中包含之前设置的用户名和邮箱,说明配置成功。 ### 设置SSH密钥(可选但推荐) 如果需要使用SSH协议与远程仓库进行通信,还需要设置SSH密钥。步骤如下: 1. 检查是否已有SSH密钥: ```bash ls -al ~/.ssh ``` 如果已经存在`id_rsa.pub`或`id_ed25519.pub`文件,则说明已有SSH密钥。 2. 生成新的SSH密钥: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 在提示中按回车键接受默认的文件名和路径,然后设置一个安全的密码(也可以直接回车不设置密码)。 3. 启动SSH代理: ```bash eval "$(ssh-agent -s)" ``` 4. 将SSH密钥添加到代理: ```bash ssh-add ~/.ssh/id_rsa ``` 5. 复制SSH公钥到剪贴板: ```bash pbcopy < ~/.ssh/id_rsa.pub ``` 6. 将公钥添加到Git服务提供商(如GitHub、GitLab等)的账户设置中。 ### 克隆远程仓库测试 在终端中输入以下命令克隆一个公开的Git仓库进行测试: ```bash git clone https://github.com/torvalds/linux.git ``` 如果能成功克隆仓库,说明Git环境搭建成功。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值