当前位置: 首页 > news >正文

Git安装与常用命令

Git简介:

  • Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或大或小的项目。
  • Git是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源代码的版本控制软件。
  • Git与常用的版本控制工具CVS、Subversion等不同,它采用了分布式版本库的方式,不用服务器端软件支持。

安装Git

1.yum安装

[root@git ~]# yum install git -y

2.编译安装

Git下载地址: Releases · git/git · GitHub

# 安装依赖关系
[root@git ~]# yum install curl-devel expat-devel gettext-devel  openssl-devel zlib-devel autoconf gcc perl-ExtUtils-MakeMaker
# 编译安装 
[root@git ~]# tar -zxf git-2.0.0.tar.gz
[root@git ~]# cd git-2.0.0
[root@git ~]# ./configure --prefix=/usr/local/git # 没有文件可以略过
[root@git ~]# make  
[root@git ~]# make install  

初次运行Git前配置

[root@gitlab ~]# git config --global user.name "用户名"  #配置git使用用户
[root@gitlab ~]# git config --global user.email "邮箱"  #配置git使用邮箱
[root@gitlab ~]# git config --global color.ui true  #语法高亮
[root@gitlab ~]# git config --list # 查看全局配置
user.name=cc
user.mail=cc@qq.com
color.ui=true

查看生成的配置文件

[root@gitlab ~]# cd
[root@gitlab ~]# cat .gitconfig 
[user]name = newrainemail = newrain@aliyun.com
[color]ui = true

在A机器上创建裸库

[root@gitlab ~]# useradd git
[root@gitlab ~]# passwd git
[root@gitlab ~]# mkdir /git-root/
[root@gitlab ~]# cd /git-root/
[root@gitlab git-root]# git init --bare shell.git
Initialized empty Git repository in /git-root/shell.git/
[root@gitlab git-root]# chown -R git:git shell.git

在B机器上创建本地库

[root@gitlab opt]# ssh-keygen
[root@gitlab opt]# ssh-copy-id git@192.168.249.156
[root@gitlab opt]# git clone git@192.168.249.156:/git-root/shell.git
[root@gitlab opt]# ls
rh  shell
[root@gitlab opt]# cd shell/
[root@gitlab shell]# vim test1.sh
[root@gitlab shell]# git add test1.sh
[root@gitlab shell]# git commit -m 'first commit'
[master (root-commit) 33c5fbf] first commit1 file changed, 2 insertions(+)create mode 100644 test1.sh
[root@gitlab shell]# git push origin master
Counting objects: 3, done.
Writing objects: 100% (3/3), 230 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@192.168.1.102:/git-root/shell.git* [new branch]      master -> master

Git命令常规操作

命令命令说明
#add添加文件内容至索引
bisect通过二分查找定位引入bug的变更
#branch列出,创建或删除分支
#checkout检出一个分支或路径到工作区
#clone克隆一个版本库到一个新目录
#commit记录变更到版本库
#diff显示提交之间,提交和工作区之间等的差异
fetch从另外一个版本库下载对象和引用
grep输出和模式匹配的行
#init创建一个空的
#log显示提交日志
#merge合并两个或更多开发历史
#mv移动或重命名一个文件,目录或符号链接
#pull

获取并合并另外的版本库或一个本地分支

#push更新远程引用和相关的对象
rebase本地提交转移至更新后的上游分支中
#reset重置当前HEAD到指定状态
#rm从工作区和索引中删除文件
show显示各种类型的对象
#status显示工作区状态
# tag创建,列出,删除或校验一个GPG签名的tag对象
  • git init:在当前目录初始化一个新的 Git 仓库。
  • git clone <仓库地址>:克隆远程仓库到本地。
  • git add <文件名>:将指定文件添加到暂存区。
  • git commit -m "<提交信息>":将暂存区中的文件提交到本地仓库,并附上提交信息。
  • git push:将本地仓库的提交推送到远程仓库。
  • git pull:从远程仓库拉取最新的改动到本地仓库。
  • git status:查看工作区和暂存区的状态,显示文件的变更情况。
  • git log:查看提交历史记录。
  • git branch:列出所有分支,当前分支前面会有一个星号。
  • git checkout <分支名>:切换到指定分支。
  • git merge <分支名>:将指定分支合并到当前分支。
  • git remote add origin <仓库地址>:将本地仓库与远程仓库关联起来。
  • git remote -v:查看当前关联的远程仓库地址。
  • git diff:查看当前文件与暂存区或者本地仓库的差异。
  • git reset <文件名>:将指定文件从暂存区移除,

git操作示意图

http://www.lryc.cn/news/235600.html

相关文章:

  • uni-app 使用vscode开发uni-app
  • 单线程的JS中Vue导致的“线程安全”问题
  • vue2 - SuperMap3D加载基于Nginx服务生成的3DTileset模型切片服务地址
  • 新版本Spring Security 2.7 + 用法,直接旧正版粘贴
  • JVM——类加载器(JDK8及之前,双亲委派机制)
  • (七)什么是Vite——vite优劣势、命令
  • vue之Error: Unknown option: .devServer.
  • 基于ssm的房屋租售网站(有报告)。Javaee项目,ssm项目。
  • LeeCode AutoX-4 计算几何
  • Vue3 动态设置 ref
  • fast lio 2 保存每一帧的点云PCD和里程计矩阵 Odom 在txt文件
  • 当前主流DDos方式有哪几类
  • 神经网络常见评价指标AUROC(AUC-ROC)、AUPR(AUC-PR)
  • Apache Doris安装部署
  • Excel查询时用vlookup或者xlookup时,虽然用的参数选择的是精确匹配,但是发现不能区分大小写,应该如何解决?
  • 4种经典的限流算法
  • <MySQL> 什么是数据库事务?事务该如何使用?
  • Linux 网络:PMTUD 简介
  • BatchNormalization:解决神经网络中的内部协变量偏移问题
  • DAC实验(DAC 输出三角波实验)(DAC 输出正弦波实验)
  • 许多网友可能还不知道,升级到Windows 11其实没那么复杂,只要符合几个条件可以了
  • ubuntu下载conda
  • 重磅 | 进一步夯实生态建设,朗思科技与阿里龙蜥完成兼容性认证
  • Qt给控件添加图片
  • 3.6-Dockerfile语法梳理及最佳实践
  • springboot集成nacos并实现自动刷新
  • java面试八股文2023完整版详解110题附带答案
  • 微服务实战系列之Token
  • DRF纯净版项目搭建和配置
  • AUTODL云服务器使用大致步骤(适合本人版)