Git 部分指令

git 常用指令记录

切换当前工作分支

git fetch <库>  //checkout之前可以先fetch一下

git checkout origin/Test//切换到origin 的Test分支

git checkout -f -B Test origin/Test //本地建一个与远程同步的Test分支

git checkout -f -B <切换到的分支> <commit 版本号> //退回之前的commit版本

 

未使用 git add 缓存代码时:git checkout .  //放弃所有的文件修改

已经使用了 git add 缓存了代码:git reset HEAD . //放弃所有的缓存

已经用 git commit 提交了代码:**git reset --hard HEAD^ //回退到上一次commit的状态

 

查看某次commit修改

 

 

合并两个分支

1,将开发分支代码合入到master中

 

git checkout dev           #切换到dev开发分支
git pull
git checkout master
git merge dev              #合并dev分支到master上
git push origin master     #将代码推到master上

 

 

查看当前工作分支

git branch -vv

git log --graph//在master分支,显示绿色

 

 

提交代码

 

git add .

git commit -m ""

git push origin Test//Test 指定分支

 

查看commit记录

git log

git log -p 文件 //查看某个文件的commit记录

git show 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e //查看某次commit修改

pull操作

1、将远程指定分支 拉取到 本地指定分支上:

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

2、将远程指定分支 拉取到 本地当前分支上:

git pull <远程仓库名> <远程分支名>

3、将与本地当前分支同名的远程分支 拉取到 本地当前分支上

git pull <远程仓库名>

在克隆远程项目的时候,本地分支会自动与远程分支建立追踪关系,可以使用默认的origin来替代远程仓库名,
所以,我常用的命令就是 git pull origin <远程仓库名>,操作简单,安全可控。


push操作

1、将本地当前分支 推送到 远程指定分支上(注意:pull是远程在前本地在后,push相反):

git push <远程仓库名> <本地分支名>:<远程分支名>

2、将本地当前分支 推送到 远程指定分支上:

git push <远程仓库名> <远程分支名>

3、将本地当前分支 推送到 与本地当前分支同名的远程分支上

git push <远程仓库名>

同样的,推荐使用第2种方式,git push origin <远程分支名>

远程新建一个repository

 git remote add <新建库名字> <新建库路径>//git remote add TESTR git@github.com:cluster.git

git fetch pull checkout区别

1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge

2. git pull:相当于是从远程获取最新版本并merge到本地

 

基础知识:git 有三个重要区域

1.HEAD 指向最近一次commit里的所有snapshot ,git commit -m ""

2.Index 缓存区,只有Index区域里的东西才可以被commit,即被 git add .执行后

3.working Directory 用户操作区域

 

checkout 分支时:

1.将HEAD指向那个分支的最后一次commit

2.将HEAD指向的commit 里所有文件的snapshot替换调Index区域里原来的内容

3.将Index区域里的内容填充到Working Directory

HEAD 、Index、Working Directory内容一样

 

删除本地branch

git branch -D <branch_name>

 

查找commit

git log --stat commitId 或者 git show --stat commitId 查看某一次提交的文件修改列表

 

其它

git log --oneline 或者 git log --pretty=oneline 以精简模式显示
git log --graph 以图形模式显示
git log --stat 显示文件更改列表
git log --author= ‘name’ 显示某个作者的日志
git log -p filepath 查看某个文件的详细修改
git log -L start,end:filepath 查看某个文件某几行范围内的修改记录
git diff 文件对比
git diff filepath 工作区与暂存区比较
git diff HEAD filepath 工作区与HEAD ( 当前工作分支) 比较
git diff --staged 或 --cached filepath 暂存区与HEAD比较
git diff branchName filepath 当前分支的文件与branchName 分支的文件进行比较
git diff commitId filepath 与某一次提交进行比较

git revert -m 1 80e36af413537a31efd521f9e8ff8b1ea70af7c9

posted @ 2020-10-28 11:14  我家有只江小白  阅读(122)  评论(0编辑  收藏  举报