Git总结

作者: 最黑暗的自己 | 来源:发表于2020-10-18 21:21 被阅读0次

以下为git常见指令的节点变化


图示git.jpg

以下文字总结参考廖雪峰的git教程

分布式版本控制系统

配置仓库的使用者(--global 表示这台机器所有git仓库都使用这个配置)

$git config --global user.name ""

$git config --global user.email ""

版本库(repository) - 被git所管理的目录

1、创建空目录

$mkdir learngit //创建learngit文件夹

$cd learngit //进入learngit文件夹

$pwd //显示当前目录

2、将目录变成git可以管理的仓库

$git init

3、在仓库里创建文件

$git add xxx.txt //把文件加到仓库    ----------------   $git checkout //撤销工作区的修改,把暂缓区的最新版本移到工作区

$git commit -m "提交的说明" //把文件提交到仓库

1、$git status//查看仓库当前的状态

比较区间版本

区间:

1、工作区 (working tree)

2、暂缓区(index/stage) - 执行git add后

3、本地仓库(repository) - 执行git commit后

$git diff// 查看working tree 与 index的差别

$git diff --cached// 查看index与repository的差别

$git diff HEAD//查看working tree与repository的差别,其中HEAD代表最近一次commit的信息
回退
版本回退
$git log//查看提交日志

$git reflog//查看历史提交日志,每条日志都有

$git log --pretty=oneline//查看提交日志(一行)

$git reset --hard HEAD^ //回退回上一个版本(head^^上两个版本,head~100往上100个版本)

$git reset --hard 1094a //回退至指定版本

$cat readme.txt//查看指定文件
撤销修改
git checkout -- file //1、未放置暂存区,撤销回到版本库一样的状态 2、已加到暂存库,又做了修改,撤销回到添加到暂存区后的状态(回到最近的一次git commit或者git add状态)

git reset HEAD readme.txt//将暂存区的修改撤销,重新回到工作区

1、想直接丢弃工作区的修改 git checkout

2、想丢弃暂存区的修改 git reset HEAD ->git checkout

3、想丢弃版本库的修改 git reset --hard

删除文件
git checkout -- readme.txt //工作区删除文件,但是版本库还留存,可以恢复文件

git rm readme.txt //从版本库删除文件

先手动删除工作区文件后,想从版本库删除文件

git add readme.txt 与 git rm readme.txt 效果一致

远程仓库
添加远程库
git remote add origin https://github.com/mirse/learnGit.git //关联远程库

git push -u origin master //第一次推送master分支的所有内容  -u git不但会把本地分支推送到远程,并且会把二者关联起来

git push origin master //每次本地提交后,推送最新版到远程
从远程库克隆
git clone https://github.com/mirse/WeatherDemo.git //从远程库克隆
分支管理
创建和分支合并
git branch //查看分支

git branch <name> //创建分支

git checkout <name> 或 git switch <name> //切换分支

git checkout -b <name> 或 git switch -c <name> // 创建并切换分支

git merge <name> // 合并某分支到当前分支

git branch -d <name> //删除分支
解决冲突

合并分支时可能遇到冲突,根据文本提示解决后重新git add ->git commit

<<<<<<< HEAD   (HEAD表示当前)
Creating a new branch is quick & simple.
=======
Creating a new branch is quick AND simple.
>>>>>>> feature1 (feature1表示要合并的分支)
git log --graph //查看分支合并图
分支管理

如果使用禁用fast forawrd模式,git会在merge时生成一个新的commit

git merge <name> // 合并某分支到当前分支(默认使用ast forward模式)

git merge --no-off --m "说明内容" <name> //合并分支不使用Fast forward模式
bug分支
git stash //贮藏当前文件修改

git stash list//查看贮藏列表

git stash pop//应用贮藏,同时把stash内容删除

git stash apply stash@{0}//应用贮藏,但是stash内容不删除

git stash drop//删除贮藏

git cherry-pick <commitId> //复制一个特定的提交到当前分支
分支强制删除
git branch -D <name>
多人协作
git remote -v //查看远程库信息

git push origin branch-name //从本地推动分支

git checkout -b branch-name origin/branch-name //在本地分支创建和远程分支对应的分支

git pull //从远程抓取分支
Rebase
git rebase //将本地未push的分支提交历史整理成直线
标签管理
创建标签
git tag <tagname> //新建一个标签(HEAD)

git tag <tagname> commitId //在commitId新建一个标签

git tag -a <tagname> -m "blblbl" //创建带有说明的标签
操作标签
git push origin <tagname> //推送一个本地标签

git push origin --tags //推送全部未推送过的本地标签

git tag -d <tagname> //删除一个本地标签

git push origin :refs/tag/<tagname> //删除一个远程标签
使用Github

1、在gitHub上可以fork任意开源仓库

2、拥有fork仓库的读写权限

3、修改后可以pull request给官方仓库

使用Gitee
1、(1)ssh-keygen -t rsa -C "your email" ->(2) cat ~/.ssh/id_rsa.pub ->(4)ssh -T git@gitee.com

//(1) 本地电脑生成ssh密钥,-> (2)查看ssh密钥 ->(3) 添加到gitee->(4) 确认并添加主机到本机ssh可信列表

2、git remote -v //查看远程库信息

3、git remote rm origin //删除已有的github远程库

4、 git remote add origin git@gitee.com:menghuanqv/test.git //关联gitee远程库

本地库同时关联github与gitee

使用多个远程库时,git默认给远程库起的默认名字是origin,如果有多个远程库,我们需要用不同的名称来表示不同的远程库。

 git remote add github git@gitee.com:menghuanqv/test.git

 git remote add gitee git@gitee.com:menghuanqv/test.git

推送:

git push github master  //推送到github

git push gitee master //推送到gitee
自定义git
忽略特殊文件
.gitignore //在文件里添加需要忽略的文件

git add -f //强行添加忽略文件所忽略的文件

相关文章

  • 工具集#01 Git 代码版本控制

    目录:Git 入门Git 进阶Git 高阶总结 1. Git 入门 Git global setup Create...

  • 工具集#01 Git 代码版本控制

    目录:Git 入门Git 进阶Git 高阶总结 1. Git 入门 Git global setup Create...

  • Git与Github的使用总结 - day 03

    git常用命令总结 git配置(config): git仓库(repository): git分支(branch)...

  • git使用总结

    git使用总结 git --version //查看所安装的git的版本 git config --global ...

  • git 命令

    Git常用命令总结Git常用命令总结 git init 在本地新建一个repo,进入一个项目目录,执行git ...

  • 2018-04-18

    git学习小结 关于git init,git add,git commit 用法总结 1.首先配置git 全局配置...

  • GitHub创建远程仓库及连接

    总结:使用的git命令 git init git remote add origin (远程仓库地址) git r...

  • git总结

    git总结 标签(空格分隔): git 本文是对廖雪峰的git教程的总结 [TOC] 创建版本库 创建版本库:gi...

  • Git 常用指令

    Git常用命令总结 Git常用命令总结 git init 在本地新建一个repo,进入一个项目目录,执行git i...

  • Git Summary Template

    Git Summary Template ​ git 提交模板,个人总结 ( ) : <空行> ...

网友评论

      本文标题:Git总结

      本文链接:https://www.haomeiwen.com/subject/lpfhmktx.html