Git常用命令
环境配置
设置用户信息
git config --global user.name "lix" 设置用户名
git config --global user.email "20462035@qq.com" 设置邮箱
查看配置信息
git config --list
git config user.name
本地初始化git仓库(两种方式)
- 方式一 :git init 会在文件夹里面生成一个 隐藏的.git文件夹
- 方式二: 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 中,标签是用于标记特定提交的引用,通常用于标识软件版本发布。
创建标签
-
轻量标签: 轻量标签只是一个指向特定提交的引用。创建轻量标签使用
-a
选项:git tag <tag-name> <commit-SHA>
例如:
git tag v1.0.0 1a2b3c4
-
附注标签: 附注标签包含标签信息,如标签名、标签者、日期和注释。创建附注标签使用
-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>