git实用笔记

本文详细介绍了Git的配置、SSH密钥生成、版本库管理、分支操作、代码提交及合并等基本流程,同时讲解了CommitMessage的标准格式,包括Header、Body和Footer的构成,帮助开发者规范提交信息。
摘要由CSDN通过智能技术生成

git配置

查看安装的目录

which -a git

查看版本

git --version

配置用户名

git config --global user.name "chenxuan"

配置邮箱

git config --global user.email "2323116368@qq.com"

查看配置信息

git config --global --list

ssh密钥 

生成密钥

ssh-keygen -t rsa

注:

-t 加/解密算法

-b 秘钥长度,rsa默认秘钥长度的为 2048

-C 注释,一般是填写用户名

-f 指定生成的秘钥文件名,如果不提供此参数则使用默认文件名,如rsa私钥默认文件名 ~/.ssh/id_rsa ,公钥默认文件名 ~/.ssh/id_rsa.pub

例:ssh-keygen -t rsa -b 2048 -C "ym2048@126.com"  -f "github"

后面将公钥信息public key 添加到账户中即可,文件存放在 C:\Users\用户名\.ssh 中

初始化

初始化git

git init

备注:要在使用的文件夹内,运行后会生成一个 .git 文件

连接到远程仓库

git remote add origin git@gitee.com:cx2002/git_test.git

注:git remote add 仓库别名 仓库地址

查看当前连接的仓库

git remote -v

拉代码

拉取该分支的最新代码

git pull origin dev

注:git pull 仓库名 远程分支名   

远程分支是与当前分支相同

在子分支上合并本地其它分支代码

git merge dev

注:此时所在分支为合并后的分支,git merge 要合并分支名

下载一个项目和它的整个代码历史

git clone 远程仓库地址名

下载一个项目指定分支和它的整个代码历史

git clone -b 分支名 远程仓库地址名

注意:

git clone 是在本地没有版本库的时候,从远程服务器克隆整个版本库到本地(即将远程库整个下载到本地),是一个本地从无到有的过程。

git pull 在本地有版本库的情况下,从远程库获取最新commit 数据(如果有的话),并merge(合并)到本地  git pull = git fetch + git merge

拉取最新代码

git pull origin master:updateCode

注:git pull 仓库名 本地分支名:远程仓库名

远程分支是与当前分支不相同,但要合并

git提交代码

将更新的文件推加入到暂存区

git add .

注:.代表全部文件,也可以git add 文件名

查看文件状态

git status

注:查看文件状态,在工作区的文件是红色的,在暂存区的文件是绿色的

将暂存区文件剔除到工作区

git restore <文件名>

注:如果该文件在之后又在工作区修改了,剔除之后你会发现你后来工作区写的东西全没了!!

所以,最好使用`git restore --staged <file> `来进行剔除,不然小心白写一天代码!!!

本地提交更新

git commit -m "这是对你本次提交的描述"

    > 此时已经提交到本地仓库,但没有push到远程仓库,如何回滚?

    > 1. 通过`git log`命令来查看提交日志

> 2. 通过`git reset --soft <版本id>`撤销提交(`git reset --mixed`撤销提交和`add`两个动作)

切换到本地dev分支(此时所在分支:本地dev)

    git checkout dev

拉取最新远程仓库的代码(此时所在分支:本地dev)

    git pull origin dev

切换到本地cxTest分支(此时所在分支:本地cxTest)

    git checkout cxTest

将本地dev整合到本地cxTest中(此时所在分支:本地cxTest)

    git merge dev

将本地cxTest推送到远程仓库(此时所在分支:本地cxTest)

    git push -u origin cxTest

切换到远程dev分支(此时所在分支:远程dev)

    git checkout dev

将远程cxTest分支合并到远程dev中(此时所在分支:远程dev)

    git merge cxTest

切换到本地cxTest分支

    git checkout cxTest

git分支中常用指令

列出所有本地分支

git branch

列出所有远程分支

git branch -r

新建一个分支,但依然停留在当前分支

git branch name

注:git branch 分支名

新建一个分支,并切换到该分支

git checkout -b name

注:git checkout -b 分支名

本地分支切换

git checkout name

注:git checkout 本地分支名

合并指定分支到当前分支

git merge name

注:git merge 分支名

把本地分支上传到远程仓库

git push test localname

注:git push 仓库名 分支名

此时所在分支:localname

删除分支

git branch -d name

删除远程分支

$ git push origin --delete [branch-name]

$ git branch -dr [remote/branch]

commitizen

Commit Message 标准格式包括三个部分:Header,Body,Footer

<type>(<scope>): <subject>

// 空一行

<body>

// 空一行

<footer>

其中,Header 是必需的,Body 和 Footer 可以省略

一、Header

Header 部分只有一行,包括三个字段:type(必需)、scope(可选)、subject(必需)

1. type

用于说明类型。可分以下几种类型

 

2. scope

用于说明影响的范围,比如数据层、控制层、视图层等等。

3. subject

主题,简短描述。一行

二、Body

对 subject 的补充。可以多行。

三、Footer

主要是一些关联 issue 的操作。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值