linux搭建git服务器,windows客户端配置git

news/2024/5/2 17:01:01/文章来源:https://blog.csdn.net/midae/article/details/128031297

Linux服务器配置之Git服务器搭建步骤:

一、配置环境

1、服务器:CentOS 8.2(64位) + Git (version 2.27.0)
2、客户端:Windows 10 (64位) + Git(version 2.38.1.windows.1)
3、服务器连接软件:Xshell 7

二、配置步骤

1、安装git 服务端
Linux作为服务器端系统,Windows作为客户端系统,分别安装Git

服务器端

[admin@ceontOS ~]$ su root                  #切换到root用户名

Password:                                   #输入root用户的密码

[root@ceontOS ~]# yum install -y git        #执行该命令进行Git安装

安装完后,查看Git版本

[root@ceontOS ~]# git --version

git version 2.27.0

   

客户端:
下载 Git for Windows,地址:https://git-for-windows.github.io/
安装完之后,可以使用 Git Bash 作为命令行客户端。
安装完之后,查看 Git 版本

$ git --version

git version 2.38.1.windows.1

2、服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码

[root@ceontOS ~]# cd /home                                  #进入/home/目录[root@ceontOS home]# id git                                 #查看git用户是否存在id: git: no such user                                       #提示git用户不存在[root@ceontOS home]# useradd git                            #创建git用户[root@ceontOS home]# passwd git                             #为git用户创建密码Changing password for user git.New password:                                               #设置密码BAD PASSWORD: The password is shorter than 8 charactersRetype new password:                                        #确认密码passwd: all authentication tokens updated successfully.



3、服务器端创建 Git 仓库
设置 mkdir -p /home/git/dataCollect.git 为 Git 仓库

[root@ceontOS home]#mkdir -p /home/git/dataCollect.git   #在git用户目录下创建仓库目录git,并且创建dataCollect.git项目目录注: dataCollect.git为仓库名
[root@ceontOS home]# ls      #查看/home/目录下有哪些用户目录
admin git
[root@ceontOS home]# cd git   #进入git用户目录
[root@ceontOS git]# ls      #查看git用户目录下有哪些目录/文件
dataCollect.git[root@ceontOS git ]# git init --bare /home/git/dataCollect.git    #这步很重要,初始化项目测试目录Initialized empty Git repository in /home/git/fenlin88l.git/然后把 Git 仓库的 owner 修改为 git[root@ceontOS git]#  ll      #查看项目文件夹的拥有者
drwxr-xr-x 3 root root 4096 Jan 13 13:08 dataCollect.git    #拥有者是root用户名[root@ceontOS git]# chown -R git:git dataCollect.git    #将拥有者改为git用户[root@ceontOS git]# ll      #再次查看dataCollect.git项目文件夹的拥有者
drwxr-xr-x 7 root root 4096 Nov 25 08:32 dataCollect.git #拥有者是git用户

4、客户端 clone 远程仓库

先在本地Windows系统上创建一个存放git项目的文件夹,例如我的设置在:【D:\git\dataCollect】

此处通过Git Bash来创建的,当然也可以手动创建该目录,然后进入该目录,启动Git Bash

 #在桌面打开的git bash

$ cd d:   #进入D盘

$ mkdir git  #创建git文件夹
$ git clone  git@服务器公网IP地址:/home/git/dataCollect.git    #IP地址后面跟冒号,冒号后面是刚才初始化的项目文件夹的绝对路径

此时 C:\Users\用户名\.ssh 下会多出一个文件 known_hosts,以后在这台电脑上再次连接目标 Git 服务器时不会再提示上面的语句。

【说明】如果你的服务器没有配置SSH连接,那么按照正常情况会让你输入git用户的密码,输入正确后就能进行项目克隆了。

如果不采用 SSH 公钥来进行验证,则每次都要输入密码,很麻烦,下面就来配置SSH公钥验证的方式来clone项目

 问题:如果不配置ssh公钥使用git远程仓库会怎么样,会出现以下:

  

5、客户端创建 SSH 公钥和私钥

参考:(102条消息) windows免密码登陆linux服务器_glory8901的博客-CSDN博客

6、禁止 git 用户 ssh 登录服务器

之前在服务器端创建的 git 用户不允许 ssh 登录服务器

编辑 /etc/passwd

[admin@ceontOS ~]$ su root   #切换到root用户
Password:
[root@ceontOS admin]# sudo vi /etc/passwd  #编辑/etc/passwd文件

找到:

git:x:1001:1001::/home/git:/bin/bash

修改为:

git:x:1001:1001::/home/git:/bin/git-shell

此时 git 用户可以正常通过 ssh 使用 git,但无法通过 ssh 登录系统。

7.Windows下客户端操作

具体如何建立本地仓库,并且上传可以参考如下文章:
(1) git 使用命令行来push的方法

(102条消息) GIT代码管理: git remote add_三轮车的视觉进阶_的博客-CSDN博客

 (2)使用pycharm来连接git远程仓库,并push

pycharm连接远程仓库,提交代码 - 暖心向太阳。 - 博客园 (cnblogs.com)

8. 删除git文件,包括已经提交到本地库中的文件

(102条消息) Git:移除文件----git rm命令的使用_Samven_7的博客-CSDN博客_git 删除文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_36494.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Actipro Windows Forms Controls 22.1.3 注册版

Actipro Windows Forms Controls 窗体控件 一组用于构建漂亮的 Windows 窗体桌面应用程序的 UI 控件 语法编辑器 语法高亮代码编辑器控件和解析套件。 为您自己的应用程序带来类似于 Visual Studio 的强大代码编辑体验,以及流行代码编辑器中的所有高级功能。大多数流…

C#程序采用AOT发布,真的可以避免被反编译?

上次跟大家分享过,C#程序反编译与篡改代码的教程《C#程序发布时,一定要好好的保护,不然你会后悔的!》,根据这个教程,我们都知道C#程序,发布后必须进行加密混淆,不然就是相当于源码直…

Redis基础命令(set类型)交集并集差集

目录 概述: 特征: Set常见命令: 1.Sadd key number..:向set中添加一个或多个元素 2.Srem key number...:移除set中指定的元素 3.Scard key:返回set中元素的个数 4.Sismember key member:判断一个元素…

html实现好看的导航主页(附源码)

文章目录1.设计来源1.1 主界面1.2 底部导航1.3 屏幕保护2.效果和源码2.1 动态效果2.2 源代码源码下载作者:xcLeigh 文章地址:https://blog.csdn.net/weixin_43151418/article/details/128028326 html实现好看的导航主页(附源码) html实现好看的导航主页&…

小小王总,如何变成任正非、化腾、强东这样的巨人!

原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,非公众号转载保留此声明。王总特别迷信外面的企业培训。当遇到问题时,他喜欢去取经。这个经不像唐僧取经一样,需要历经九九八十一难…

谱本征正交分解 (SPOD)附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

python下载安装教程

1、下载python 下载地址:https://www.python.org/,点击Downloads,选择对应电脑系统,进行下载。 (文末送读者福利) 2、安装python,以python3.10.7安装为例。 (1)双击安装包&#x…

[ Linux ] 进程间通信之共享内存

在上篇博文我们了解了通过管道完成进程间通信,我们了解匿名管道和命名管道,并且通过编码模拟实现使用了匿名管道和命名管道。我们知道要让进程间完成通信必须让这两个进程首先看到同一份资源,因此给予这个前提,本篇博文我们了解另…

Java 内存溢出(二)使用 MAT 分析 .hprof 内存映像文件

目录一、内存溢出时自动导出 .hprof 文件二、下载安装 MAT三、启动 MAT四、MAT 分析 hprof 文件1.Overview 概览2.Leak Suspects 溢出原因猜测3.Histogram 对象实例数量排序4.Dominator Tree 支配树.hprof 文件: 是 java 项目的 Heap Dump 文件,也叫内存…

基于JAVA的新闻发布管理系统开发参考【数据库设计、源码、开题报告】

数据库脚本下载地址: https://download.csdn.net/download/itrjxxs_com/86427655 目的 本系统的目的是实现新闻发布系统的基本功能。新闻发布系统提供了不同类型新闻(如社会新闻、娱乐新闻和技术前沿新闻等) 满足不同用户需求;系…

简述供应商管理SRM系统

简道云SRM管理系统供应商关系管理(SRM系统),是企业可以用来对供应商的优势和能力进行系统的、全行业范围的评估,涉及企业整体的商业战略,供应商寻源、采购审批、比价、招投标管理、订单执行、库存可视化管理、财务支付审批对账、供应商绩效评…

Steam项目推进 (一) ——项目情况简述

一、前言 之前跟一个策划朋友一起做过一个小项目Demo,然后中止了大半年,现在想继续把这个项目推进下去。又怕自制力不够,所以建立一个栏目来记录这个项目的推进情况,记忆在项目中学习到的东西。 二、目前的项目情况 1、项目定位…

Flutter高仿微信-第32篇-单聊-语音

Flutter高仿微信系列共59篇,从Flutter客户端、Kotlin客户端、Web服务器、数据库表结构、Xmpp即时通讯服务器、视频通话服务器、腾讯云服务器全面讲解。 详情请查看 效果图: 详情请参考 Flutter高仿微信-第29篇-单聊 , 这里只是提取语音聊天实…

基于遥感和GIS技术的生态承载力评价的解决方案

生态承载力的概念最早来自于生态学。1921年,Park和Burgess在生态学领域中首次应用了生态承载力的概念,即在某一特定环境条件下(主要指生存空间、营养物质、阳光等生态因子的组合),某种个体存在数量的最高极限。生态承载…

APP到底有没有权限-恶意拷贝删除照片

作者:黑蛋 近期发生了一件比较恶劣的事情,某客户在某物上面买了一件东西,但是这个东西是假货,所以客户致电某物人工客服,并进行了录音,这时候某物试图通过自身的客户端软件,去删除客户手机上的…

Python字符串及正则表达式

一: 字符串可以用单引号或双引号来创建,也可以用三引号来创建多行字符串。 String_1 加快发展 String_2 "促进生产" String_3 """吾家吾国, 吾家吾国, 吾家吾国, 吾家吾国。""…

Principal branch

In mathematics, a principal branch is a function which selects one branch (“slice”) of a multi-valued function. Most often, this applies to functions defined on the complex plane. Contents1 Examples1.1 Trigonometric inverses1.2 Exponentiation to fraction…

计算机网络的定义和分类

计算机网络早期定义:自治互联的计算机集合 计算机网络系统的基本组成为:通信子网资源子网 计算机网络分类: 公用网通常是由电信公司出资建造的大型网络。 专用网通常是由某个部门为满足本单位特殊业务的需要建造的网络&#xff…

企业如何提供安全方面的投资回报率?

为什么增加在恢复方面的投资可以提高投资回报率? 所有企业都会认可安全的重要性,但在安全上的投入却经常令人迷惑。 一方面,由于安全威胁在不断变化,所以,安全建设维护需要长期持续大量投入。另一方面,长期大量投入后…

基于JSP的企业固定资产管理系统【数据库设计、源码、开题报告】

数据库脚本下载地址: https://download.csdn.net/download/itrjxxs_com/86466989 主要使用技术 SpringStruts2HibernateJSPCSSJSMysql 功能介绍 固定资产管理系统是对高校固定资产的一个信息化管理系统,基本功能包括: 对固定资产的购进、…