前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安装Git,并在客户端建立一个空项目并克隆

安装Git,并在客户端建立一个空项目并克隆

作者头像
可定
发布2020-04-20 14:46:56
1.9K0
发布2020-04-20 14:46:56
举报
文章被收录于专栏:细嗅蔷薇细嗅蔷薇

分两大步,分别在服务器端(虚拟机中的linux)和客户端(真机中的Windows)中操作

一、步骤

1.1 服务器端

1.1.1 先从yum安装Git
代码语言:javascript
复制
$ yum –y install git
1.1.2 在需要的位置创建一个空仓库

(倒数第二级目录有且仅有.Git文件夹)

代码语言:javascript
复制
$ cd /usr/local
$ mkdir git
$ cd git
$ git init --bare learngit.git
1.1.3 创建一个Git用户并赋予密码
代码语言:javascript
复制
$ useradd git
$ passwd git
1.1.4 赋予Git用户权限
代码语言:javascript
复制
$ chown -R git:git learngit.git
1.1.5 禁用Git用户shell登录(一定要禁用)
代码语言:javascript
复制
$ vi /etc/passwd
1.1.6 将Git用户修改为如下(一般在最后一行)
代码语言:javascript
复制
git:x:1000:1000::/home/git:/usr/bin/git-shell

其他的不用改,esc键,再输入:wq保存退出。服务端完成。

1.2 客户端

我使用的客户端为Git for Windows

1.2.1 安装,全部直接下一步即可
1.2.2创建用户(进入Git Bash)
代码语言:javascript
复制
$ Git config --global user.name "你的名字"
$ Git config --global user.email "你的邮箱"
1.2.3 进入想要将项目放置的目录
代码语言:javascript
复制
$ cd F:
$ mkdir git
$ cd git
1.2.4 创建秘钥(用来防止每次commit或push都需要密码)
代码语言:javascript
复制
$ ssh-keygen -t rsa -C "你的邮箱"

一直回车(2-3次)

1.2.5 将秘钥加入服务器列表
1.2.5.1 取得公钥(本地)

   在当前目录下(若未改变目录,到C:\Users\Administrator.ssh\id_rsa.pub)找到.ssh目录下的id_rsa.pub文件,使用notepad++或其他软件(如记事本)打开,复制其中内容(类似如下:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDQw54am1KGSyTHujgr1GdvwWA1cZK2PPAVzpK6hXvPKeoAQVR4fmkFVtBQY1+kAMQtuyFD7a4kZOzS8sPju9kDxmqMRhHxO6g9OA6r9BsS1dfmwDxdE7GNpK/t+639XeaKEvs6+BrxqEDc3kTSXyHG+geHO4idxh3e3VUkvejKmICOlMX10IjcZx5aU2kqh3FeSQH/R2YjSArCe7z0mHdZ06F3SPBT72DaJsvezCQ9btRCYANIMK4PXnPT5h2nCu3jQ8cSrzvPpPp6grJIwftFQYbKIyex8AVTaOH2AeIXTCgtD9tPzmx/VwqJS9HLJlQJ0c1p0Sfsl6YJyo6+oaf 你的邮箱    

1.2.5.2将公钥加入服务器列表(服务器)

   CentOS 7默认列表在/root/.ssh/authorized_keys,使用vi 编辑此文件输入刚才复制的内容,保存退出。

代码语言:javascript
复制
 $ vi /root/.ssh/authorized_keys
 //输入i修改
 //按esc后输入:wq保存退出
1.2.5.3 可以跳过此步,若克隆远程项目多次仍然需要密码,则检查上一步是否有错误,没有错误后,在配置这一步(服务器)

   在/home目录下创建.ssh目录,进入,创建authorized_keys文件

代码语言:javascript
复制
$ cd /home
$ mkdir .ssh
$ cd .ssh
$ vi authorized_keys

加入我们的公钥后保存退出。

1.2.6 克隆远程项目(本地)
代码语言:javascript
复制
$ cd F:
$ cd git
//把ip换成自己服务器的
$ git clone git@192.168.187.128:/usr/local/git/learngit.git
Cloning into 'project1'...
git@192.168.187.128's password:
warning: You appear to have cloned an empty repository.
1.2.7 如果需要密码,输入你设置的Git用户密码。

若clone之后commit多此后仍然需要密码,执行5.3,若已经执行,检查公钥是否正确,然后退出Git for windows,再此打开Git for windows克隆。

二、可能出现的问题

2.1 在创建“/root/.ssh/authorized_keys”文件时出现“E212: Can't open file for writing”错误的解决方法。

检查一下.ssh目录是否存在。

2.2 客户端一直连接不上服务器端的解决方法

(如出现以下错误:

ssh: connect to host 192.168.1.1 port 22: Connection timed out

fatal: Could not read from remote repository.

Please make sure you have the correct access rights and the repository exists.

原因:在客户端输入服务器的ip地址是错误的,或服务器的ssh服务未安装/打开。

解决方法:

1、前者:可通过在Linux中终端输入“ifconfig -a”查看服务器正确的IP地址解决。
2、后者:
(1)登录Centos 7系统。

  使用root用户登录。

 (2)查看SSH是否安装。

  输入命令:rpm -qa | grep ssh

  注:若没安装SSH则可输入:yum install openssh-server安装。

  (3)启动SSH服务。

  输入命令:systemctl restart sshd 重启SSH服务。

  命令:systemctl start sshd 启动服务 |

命令:systemctl stop sshd 停止服务

重启后可输入:netstat -antp | grep sshd 查看是否启动22端口。

  (4)如何设置SSH服务为开机启动?

  输入命令:systemctl enable sshd 即可。

  注:若是systemctl disable sshd 则禁止SSH开机启动。

2.3 在克隆远程项目时出现“Could not chdir to home directory /home/git: Permission denied”的解决方法。

在服务器端用root账号修改/home/git的权限。

如:$ chmod 775 /etc/git

三、注意

3.1 在克隆远程项目时,若出现”warning: You appear to have cloned an empty repository.”不需要理会(本来创建的就是空项目)。

3.2 服务器端的Git安装后可在终端中用“git --version”检查版本与官网最新的版本是否一致,若不一致,可能是因为默认使用了"/usr/bin"下的Git。

详细操作步骤如下:

(1)安装后,查看版本

$ git --version

可能展示与实际安装版本不符。是因为默认使用了"/usr/bin"下的git

(2)配置环境变量

$ vim /etc/profile

(3)在文件的最后一行,添加下面的内容,然后保存退出。

export PATH=/usr/local/git/bin: PATH

(4)刷新配置文件

$ source /etc/profile

(5)再次查看,

$ git --version

这时候版本查看不一致的问题就解决了。

四、参考链接

CentOS 7 安装Git

linux下安装Git并生成SSH key

CentOS下开启SSH Server服务

git 服务器架设

版权所有:可定博客 © WNAG.COM.CN

本文标题:《安装Git,并在客户端建立一个空项目并克隆》

本文链接:https://cloud.tencent.com/developer/article/1616857

特别声明:除特别标注,本站文章均为原创,本站文章原则上禁止转载,如确实要转载,请电联:wangyeuuu@qq.com,尊重他人劳动成果,谢过~

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、步骤
    • 1.1 服务器端
      • 1.1.1 先从yum安装Git
      • 1.1.2 在需要的位置创建一个空仓库
      • 1.1.3 创建一个Git用户并赋予密码
      • 1.1.4 赋予Git用户权限
      • 1.1.5 禁用Git用户shell登录(一定要禁用)
      • 1.1.6 将Git用户修改为如下(一般在最后一行)
    • 1.2 客户端
      • 1.2.1 安装,全部直接下一步即可
      • 1.2.2创建用户(进入Git Bash)
      • 1.2.3 进入想要将项目放置的目录
      • 1.2.4 创建秘钥(用来防止每次commit或push都需要密码)
      • 1.2.5 将秘钥加入服务器列表
  • 二、可能出现的问题
    • 2.1 在创建“/root/.ssh/authorized_keys”文件时出现“E212: Can't open file for writing”错误的解决方法。
      • 2.2 客户端一直连接不上服务器端的解决方法
        • 1、前者:可通过在Linux中终端输入“ifconfig -a”查看服务器正确的IP地址解决。
        • 2、后者:
      • 2.3 在克隆远程项目时出现“Could not chdir to home directory /home/git: Permission denied”的解决方法。
      • 三、注意
        • 3.1 在克隆远程项目时,若出现”warning: You appear to have cloned an empty repository.”不需要理会(本来创建的就是空项目)。
          • 3.2 服务器端的Git安装后可在终端中用“git --version”检查版本与官网最新的版本是否一致,若不一致,可能是因为默认使用了"/usr/bin"下的Git。
            • (1)安装后,查看版本
            • (2)配置环境变量
            • (3)在文件的最后一行,添加下面的内容,然后保存退出。
            • (4)刷新配置文件
            • (5)再次查看,
        • 四、参考链接
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档