Git的使用总结

1.Git

简介

Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 [1] Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

版本控制系统如何帮我们控制版本?

我们需要进行版本控制的文件都要提交到一个**仓库(其实就是一个隐藏文件夹)**里面,我们对文件做出的修改都会被这个版本控制系统侦测到,如果我们要保留这个版本的文件,就要通过版本控制系统提供的命令把文件提交到仓库里面,然后版本控制系统就会自动为我们提交的文件打上版本号。

仓库分几种?

本地仓库:建立在本地的文件夹。
远程仓库:建立在互联网的服务器内的文件夹。(Github)

Git 思维导图

在这里插入图片描述

2. Git基本操作

git log --graph 查看log提交记录

git init 初始化

git status 查看仓库当前的状态

git diff 查看具体修改了什么内容

git diff HEAD – 命令可以查看工作区和版本库里面最新版本的区别

git add 添加到暂存

git add -f 假如文件被忽略这样可以强制添加

git commit -m “balabalabala” 提交暂存区的文件到本地仓库

git log --graph --pretty=oneline 查看日志

git reset --hard HEAD^ (git reset --hard 版本编号) 版本回退

git reset HEAD 添加到了暂存区时,想丢弃修改

git checkout – 当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时

git rm 从版本库中删除该文件(然后commit)

git remote 查看远程库信息

git remote -v 更加详细的查看

git remote add origin 地址 本地关联远程库

git clone 地址 克隆远程库

git branch 查看当前分支

git branch 创建分支

git checkout 切换分支

git checkout -b 我们创建分支,然后切换到分支

git merge 合并分支到当前分支

git merge --no-ff -m “xxxxx” 合并分支时,加上–no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并

git branch -d 删除分支

git branch -D 强行删除

git 删除远程仓库文件夹

git pull origin 拉取

git push origin 推送

git stash 把当前工作现场“储藏”起来,等以后恢复现场后继续工作

git stash list 查看贮藏区

git stash apply 恢复后,stash内容并不删除

git stash drop 删除贮藏区的内容

git stash pop 恢复的同时把stash内容也删了

你可以多次stash,恢复的时候,先用git stash list查看,然后恢复指定的stash,用命令 git stash apply stash@{0}

git rebase 变基(线路变得好看)

git tag 打标签

git tag -a -m “balabalbal…” 可以指定标签信息

git tag 查看所有标签

git show 查看该标签版本信息

git tag -d 删除标签

git push origin 推送标签到远程

git push origin --tags 一次性推送全部尚未推送到远程的本地标签

git push origin :refs/tags/ 可以删除一个远程标签

在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。

git reflog用来记录你的每一次命令

操作思维导图:

在这里插入图片描述

3.分支管理

在这里插入图片描述

分支基本操作

git branch:查看分支(当前所在分支前面会有一个星号)
git checkout 分支名:切换分支
git branch -b 分支名:创建分支
git branch -d 分支名:删除分支

在这里插入图片描述

合并分支冲突

  • 合并冲突

vi code.txt 手动修改冲突的文件
git add code.txt
git commit -m “解决冲突”
git log

bug分支管理

  1. git stash 隐藏当前分支
  2. git checkout master 创建404 bug分支来修复任务,切回到master分支
  3. git checkout -b 404-bug 创建404bug分支
  4. 在分支上删除最后一行的内容
  5. git add . git.commit -m ‘修复404bug’ 提交404-bug分支
  6. 合并分支
    6.1 git checkout master 切回到master分支
    6.2 git merge --no-ff -m ‘merge bug fix404’ 合并404-bug分支内容(禁止快速合并模型,有一次commint提交记录)
    6.2 然后查看master的readme。txt文件内容
  7. git branch -d 404-bug 在master上删除404-bug分支
  8. 重新恢复dev分支
    8.1. git checkout dev git status 切回dev分支并查看分支状态,发现工作区是干净的
    8.2 还原工作现场 git stash list
    8.3 恢复工作内容并删除缓存内容
    【git stash apply ,git stash drop删除】=【git stash pop】
    在这里插入图片描述

https://blog.csdn.net/yiyijianxian/article/details/83341833

4.Github使用

Git与Github的连接与使用

5. 工作中使用

在这里插入图片描述

6. 分支代码转移 git cherry-pick

对于多分支的代码库,将代码从一个分支转移到另一个分支是常见需求。

参考http://www.ruanyifeng.com/blog/2020/04/git-cherry-pick.html

这时分两种情况。一种情况是,你需要另一个分支的所有代码变动,那么就采用合并(git merge)。另一种情况是,你只需要部分代码变动(某几个提交),这时可以采用 Cherry pick。

在这里插入图片描述

git cherry-pick命令的作用,就是将指定的提交(commit)应用于其他分支。

git cherry-pick <commitHash>

git cherry-pick --abort 放弃

6. git rebase 简化提交历史

通过git rebase -i 将本地的多次提交合并为一个,以简化提交历史

git checkout master
git pull
git checkout local
git rebase -i HEAD~2  //合并提交 --- 2表示合并两个
git rebase master---->解决冲突--->git rebase --continue
git checkout master
git merge local
git push

7.回滚指定版本

git log --pretty=oneline
git reset --hard <commit hash>
git push -f origin master

8.撤销本次commit

git reset HEAD~

9.贡献者协作

http://jupiter.douyu.com/jupiter/1.4contribute.html#_1-4-1-fork-%E4%BB%A3%E7%A0%81在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值