Git 教程以及常用命令

Git 记录

设置查看:

git config --list  # 查看所有 
git config user.name  # 查看用户名 
git config --local --list  # 查看仓库级别配置
git config --global --list  # 查看用户级别配置

用户名和邮箱:

(当一个仓库以下都被设置时,优先级从上到下)

1. --local
作用范围:当前 Git 仓库
保存位置:Git 仓库的 .git/config
git config --local user.name "Your Name"
git config --local user.email "youremail@example.com"

2. --global
作用范围:当前用户
保存位置:该用户主目录下的 .gitconfig
git config --global user.name "Your Name"
git config --global user.email "youremail@example.com"

3. --system
作用范围:系统
保存位置:/etc/gitconfig
注意:对所有用户和所有 Git 仓库都有效,一般需要sudo权限
sudo git config --system core.editor "nano"

4. 不带参数
读取/写入顺序:仓库级别 > 用户级别 > 系统级别
git config user.name "Your Name"
git config user.email "your.email@example.com"

查看项目状态:

git status

查看链接到远程哪个仓库:

git remote -v

add 本地暂存区:

git add <filename1> <filename2>  # 提交某个文件
git add -A  # 提交全部

commit:

git commit -m "提交说明"  # 本地

add、commit 撤销:

git reset --soft HEAD^  # commit 撤销
git reset HEAD  # add 撤销

pull、push:

git pull origin <branchname>
git pull <url> <branchname>

git push origin <branchname> # 把已经commit的内容传到远程服务器
git push <url> <branchname>

# url 查看
git remote -v

# 注意:git pull 但是本地不变化,是因为本地文件有未提交的修改,Git默认不会覆盖本地未提交的修改

Tag:

在本地,基于刚刚推送的新代码所在的提交(也就是本地 main 分支的最新提交),为新代码创建一个 tag

# 查看 Tag 本地
git tag 
git tag -l

# 查看 Tag 远程
git ls-remote --tags origin

# 打 Tag
git push origin main
git tag <新代码标签名>
git push origin <新代码标签名>

# 删除 Tag
git tag -d <tag-name> # 删除本地
git push origin --delete <tag-name> # 删除远程

Git初始化\本地建立一个新的分支,提交到远程(远程没有):

# 新目录下
git init
git remote add origin xxxx.git
git remote -v
git checkout -b v2.1
git add .
git commit -m "在 v2.1 分支初始化内容"
git push -u origin v2.1

git branch -a # 查看本地分支和远程分支

分支:

git branch  # 查看本地分支
git branch -r  # 查看远程分支
git branch -vv  # 查看分支合并状态

git checkout <branch_name>  # 切换到存在分支
git checkout -b <new_branch_name>  # 创建并切换到新的分支

git fetch origin  # 切换到远程分支1:先拉取
git checkout origin/<branch_name>  # 切换到远程分支2:后切换

删除:

# 删除远程文件
# 从Git的索引(暂存区)中删除文件,但不会删除本地文件
git rm --cached <filename>
git commit -m "删除远程仓库中的文件 <filename>,但保留本地文件"
git push origin main

私人仓库连接

推荐 SSH,这样每次 push 都不需要再次输入账号+密码

clone 仓库要用 SSH 方式

# 本地生成 SSH key(每一个主机对应一个 SSH key)
# 看是否存在 id_rsa 和 id_rsa.pub文件,如果存在,说明已经有SSH Key
cd ~/.ssh
ls

# 如果不存在则生成一个 RSA 加密的,一直回车
ssh-keygen -t rsa -C "xxx@xxx.com"

# 查看 SSH key 然后复制
cd ~/.ssh
cat id_rsa.pub

# 配置到 GitHub 的 SSH 里面

本地项目上传到远程

首先完成上述的私人仓库连接

根据项目的提示,完成 git config 邮箱和用户名的配置

git init //把这个目录变成Git可以管理的仓库
git add README.md //文件添加到仓库
git add . //不但可以跟单一文件,还可以跟通配符,更可以跟目录。一个点就把当前目录下所有未追踪的文件全部add了 
git commit -m "first commit" //把文件提交到仓库

在远程创建仓库,例如dpo之后,关联远程仓库

~/dpo: git remote add origin xxx@xxx:xxx/xxx.git # 注意路径
~/dpo: git push origin master # 上述创建的远程分支是master不是main
~/dpo: git push -u origin master # 把本地库的所有内容推送到远程库上,-u参数用于设置远程分支作为本地分支的上游分支(upstream)。一旦设置了上游分支,后续可以直接使用 git push 和 git pull 而不需要指定远程和分支名称

Git 提交信息标记

参考:网页链接

feat:新功能或新特性

fix:修复某个 bug

docs:仅仅修改了文档,例如 Readme、注释

style:代码格式修改,不影响功能

refactor:代码重构,没有修改 bug 或者添加新功能

perf:提升性能的代码修改,例如优化数据库查询

test:添加或修改测试代码,例如添加某个单元测试

chore:其他不修改 src 或测试文件的杂物,例如构建过程和辅助工具的变动

build:影响系统构建或外部依赖的更改

ci:持续集成相关的更改

revert:回滚到某一次的提交

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值