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>
相关推荐
2401_8848107420 小时前
git知识点
git
小牛itbull1 天前
从 Vercel 构建失败谈 Git 大小写敏感性问题:一个容易被忽视的跨平台陷阱
git
chainbees1 天前
Git账号配置 SSH 密钥
运维·git·ssh
Brian Xia1 天前
Lazygi - 让git操作不再困难
git
wdfk_prog2 天前
`git rm --cached`:如何让文件“脱离”版本控制
大数据·linux·c语言·笔记·git·学习·elasticsearch
Mark_Aussie2 天前
本地项目上传到Git仓库
git
骚饼2 天前
Git 命令配置别名、Git命令缩写(Mac版)
前端·git
SStone_TJ3 天前
【常用的git命令】
git
没有鸡汤吃不下饭3 天前
Git将某个分支合并到开发(dev)、测试(test)后突然想撤销该分支的功能,怎么处理?
前端·git·github
康一夏3 天前
git fatal:Server aborted the SSL handshake
git·网络协议·ssl