Git常用命令

Git常用命令

环境配置

设置用户信息

git config --global user.name "lix" 设置用户名

git config --global user.email "20462035@qq.com" 设置邮箱

查看配置信息

git config --list

git config user.name

本地初始化git仓库(两种方式)

  1. 方式一 :git init 会在文件夹里面生成一个 隐藏的.git文件夹
  2. 方式二: git clone 网址 git远程克隆到本地仓库

版本库、工作目录、暂存区概念

  • 版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等
  • 工作目录(工作区)︰包含.git文件夹的目录就是工作目录,主要用于存放开发的代码
  • 暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方

git中文件的两种状态

Untracked : 未跟踪(未纳入版本控制),此文件在文件夹中,但并没有加入到git库,不参与版本控制。通过git add状态变为Staged。

tracked: 已跟踪(纳入版本控制)

  • Unmodified: 文件已经入库,未修改,即版本库中的文件快照内容与文件夹中完全一致。
  • Modified : 文件已修改,仅仅是修改,并没有进行其他的操作。这个文件也有两个去处,通过git add可进入暂存Staged状态,使用git checkout则丢弃修改过,返回到Unmodified状态。
  • Staged : 暂存状态。执行git commit则将修改同步到库中,这时库中的文件和本地文件又变为一致,文件 为Unmodified状态。执行git reset HEAD filename取消暂存,文件状态为Modified。

本地仓库常用命令

  • git status 查看文件状态

  • git status -s 更简洁的查看文件状态

  • git add hello.txt 将hello.txt文件加入到暂存区

  • git reset 取消暂存

  • git commit -m 提交的时候添加 日志信息。 例如 git commit -m "我提交了改变" 想要提交文件,必须先添加到暂存区 才能提交。无论是增删改,都需要commit 才能 真正实现

  • git commit -a 可以直接commit

  • git rm hello.txt 此 命令用于删除已经跟踪的文件。此时只删除了工作区里面的文件,此时自动加入到了暂存区,需要提交才能真正删除

  • git log 查看日志记录

远程仓库常用命令

查看远程仓库:

git remote -v 

添加远程仓库:

git remote add origin <远程仓库URL>

从远程仓库克隆:

git clone <远程仓库URL> <目标目录>

移除无效的远程仓库:

只是移除本地仓库与远程仓库的关联

git remote remove <远程仓库名称> 

从远程仓库中抓取与拉取:

# 从远程仓库抓取(不自动合并) 不自动合并就代表这本地文件夹看不见
git fetch <远程仓库名称>

# 从远程仓库拉取并自动合并
git pull <远程仓库名称> <分支名称>

推送到远程仓库:

# 推送到远程仓库(当前分支)
git push <远程仓库名称> <本地分支名称>:<远程分支名称>

git 分支

Git 分支是指将开发的工作从主线上分离开来的一种方式,以便在不影响主线的情况下进行工作。分支可以用来独立开发新功能、修复错误或尝试新思路。

查看分支

列出所有本地分支 git branch

列出所有远程分支 git branch -r

列出所有本地分支和远程 git branch-a

创建分支

git branch 分支名称

切换分支

git checkout 分支名称

较新版本 Git 的:

git switch 分支名称

合并分支

git merge 分支名称 想要合并分支 要在主分支 合并其它分支

推送至远程仓库分支

git push origin 分支名称

删除分支

删除本地仓库分支:git branch -d 分支名称 如果这个分支做了修改,这个命令无法删除 改成-D可强制删除

删除远程仓库分支:git push origin -d 分支名称

git标签

在 Git 中,标签是用于标记特定提交的引用,通常用于标识软件版本发布。

创建标签

  1. 轻量标签: 轻量标签只是一个指向特定提交的引用。创建轻量标签使用 -a 选项:

    git tag <tag-name> <commit-SHA>
    

    例如:

    git tag v1.0.0 1a2b3c4
    
  2. 附注标签: 附注标签包含标签信息,如标签名、标签者、日期和注释。创建附注标签使用 -a 选项和 -m 选项:

    git tag -a <tag-name> -m "Tag message" <commit-SHA>
    

    例如:

    git tag -a v1.0.0 -m "Release version 1.0.0" 1a2b3c4
    

查看标签

  • 查看所有标签:

    git tag
    
  • 查看特定标签的详细信息:

    git show <tag-name>
    

推送标签

默认情况下,git push 不会推送标签到远程仓库。要推送标签,需要使用 --tags 选项:

git push origin --tags

上述命令会将本地所有标签推送到远程仓库。

删除标签

要删除本地标签,使用 git tag -d 命令:

git tag -d <tag-name>

要删除远程仓库上的标签,使用 git push origin :refs/tags/ 命令:

git push origin --delete <tag-name>
-tags

上述命令会将本地所有标签推送到远程仓库。

删除标签

要删除本地标签,使用 git tag -d 命令:

git tag -d <tag-name>

要删除远程仓库上的标签,使用 git push origin :refs/tags/ 命令:

git push origin --delete <tag-name>
相关推荐
但老师4 小时前
Git遇到“fatal: bad object refs/heads/master - 副本”问题的解决办法
git
秃头女孩y4 小时前
git创建分支
git
研究是为了理解9 小时前
Git Bash 常用命令
git·elasticsearch·bash
DKPT9 小时前
Git 的基本概念和使用方式
git
Winston Wood12 小时前
一文了解git TAG
git·版本控制
喵喵先森13 小时前
Git 的基本概念和使用方式
git·源代码管理
xianwu54314 小时前
反向代理模块
linux·开发语言·网络·git
binishuaio16 小时前
Java 第11天 (git版本控制器基础用法)
java·开发语言·git
会发光的猪。17 小时前
如何在vscode中安装git详细新手教程
前端·ide·git·vscode
stewie619 小时前
在IDEA中使用Git
java·git