git操作笔记

命令顺序:
1、git add .
2、git commit -m[信息] 「注:出现了任何问题,一定要先commit」
3、git checkout -b [branchName]
4、git branch
5、git checkout [branchName]
6、git branch -d [branch]
7、git push

git状态

标记状态

modified

是文件已修改的意思【之前已经被add标记,但是add到暂存区,会显示modified】

untracked

未被追踪【之前没有被add标记,相当于创建了一个全新的文件】

staged

使用了add命令,等待提交

unstaged

使用了commit命令,完成提交

本地仓库的操作不需要网络

接下来的push就是连接远程仓库,需要网络

git常用命令及理解

分支

git branch

查看有哪些分支,以及当前分支

git checkout -b A

创建并切换到分支A

git checkout -d a

假设,你想删除本地 a 分支
git branch 查看本地分支,比如: a b 两个分支;
git checkout b 切换到非删除分支,因为你想删除 a, 这里切到 b分支;
执行 git branch -d a 即可;
同理:你想用命令删除远程分支:git push origin -d a;

git merge A

就是把A分支里面的文件并入到当前分支里面

标签

git tag

列出所有标签

git tag -a v1.0 -m 'my first version'

基于最新的commit,打标签
也可  git tag v1.0  

git tag -d [tagname]

删除标签
1. 删除本地tag
    git tag -d tag-name
2. 删除远程tag(如果已经push到了远程仓库)
    git push origin :refs/tags/tag-name

git push --tags

因为之前我们只是在本地仓库创建了标签,所以还需要push到远程仓库,
并且这个不会被git push覆盖

克隆,push远程仓库

git clone -b v1.0

git clone --branch [tags标签] [git地址]
git clone -b v5.2.0 --depth=1 http://gitlab地址

-b 后面写上指定 版本标签 , 即 tag, 比如 v5.2.0
--depth 表示克隆深度, 1 表示只克隆最新的版本. 因为如果项目迭代的版本很多, 克隆会很慢

git push

添加远程仓库,push到远程仓库
git remote add origin https://gitee.com/jinyibu/microservices.git
git push -u origin "master"

版本

git reflog 或者 git log

可以查看之前提交的commit编号,方便版本回退

git reset --hard 0b19fe3

0b19fe3是commit编号,可以回到0b19fe3次commit时候的代码

其他

git stash git stash pop

如果当前项目没有完成,又不想提交commit,但是又必须去另一个分支工作,
可以git stash  +  git stash pop

git pull [url] [branch]

如果当前的本地仓库不是最新的,那么就需要拉取远程仓库的分支

git cherry-pick [branch1*] [branch1]

相当于在当前的分支下 重新建立一个分支链
「如下图,当前处于master分支
需求:重新形成一条分支,里面依次包含c3,c5,c7
作用:把c3,c5,c7的提交内容全部merge到master」


注意事项:

CONFLICT (content): Merge conflict in 1.txt
Automatic merge failed; fix conflicts and then commit the result.

冲突解决:在提交修改到本次仓库之后,先merge,然后再次 add 提交,手动解决冲突

posted @ 2022-08-05 17:40  2337  Views(45)  Comments(0Edit  收藏  举报