git练习

常用git清单

强制切换分支所指位置

git branch -f main c3强制分支main指向c3

git branch -f main HEAD~3强制分支main指向head的父节点再往前3个

git checkout c3将HEAD指向c3

reset 和 revert

比如现在我们远程分支和本地分支的版本一样,现在本地进行reset,但是远程是感知不到的。这时用revert进行回退,然后再push到远程分支上。

rebase 和 merge

merge会创建一个新的节点来合并

rebase致力于一种『line』形式。如果不清楚,那就再去网站上练一练吧。

安装oh-my-zsh后,git简写

# 最常用,查看 git 项目红、绿状态用

git status  (gst)

# 查看本地分支

git branch (gb)

# 查看本地以及远端分支

git branch -a (gb -a)

# 删除本地分支

git branch -D xxx (gb -D xxx)

# 查看红色状态的改动点

git diff (gd)

# 将当前路径下的红色状态文件变成绿色状态

# 注意,做 ga 操作之前一定要先做 gd

git add . (ga .)

# 变成绿色之后,仍可对比查看改动点

git diff --cached (gd --cached)

# 正式提交到本地仓库,绿色状态提交到仓库

git commit -m "注释"  (gc -m "")

# add 和 commit 合并

git commit -a (gca)

# 查看提交日志,这个命令不带文件修改列表,建议用 glg

git log

# 查看提交日志,带文件修改列表

git log --stat (glg)

# 拉取远端分支(远端和本地分支必须同名 xxx)

git pull origin xxx (gl origin xxx)

# 推送本地分支到远端(远端和本地分支必须同名 xxx)

git push origin xxx (gp origin xxx)

# 推送同时 set-upstream 即关联本地和远端同名分支

# 关联之后 git push (gp) 或 git pull (gl) 即可不再需要后面的值

git push -u origin xxx (gp -u origin xxx)

# 打新分支,默认从当前所在的本地分支copy

git checkout -b mybranch (gco -b mybranch)

# 如果要指定从哪个分支copy 

# 后面的参数 origin/mybranch 表示从远端 mybranch 拷贝

git checkout -b mybranch origin/mybranch (gco -b mybranch origin/mybranch)

# 如果是从远端copy,更加建议使用 -t 参数

# 这样省略掉倒数第二个参数,同时本地分支和远端分支建立起了关联

# 这是另一种关联本地分支和远端分支的方法

git checkout -t origin/mybranch (gco -t origin/mybranch)

# set-upstream 也可以建立关联,一旦本地和远端同名分支建立起关联

# 后续的 push 和 pull 操作,不需要任何参数, gp 或 gl 即可

# merge 操作

# merge 可合并不同名分支到当前本地分支

# 以下指令将远端

git merge origin/master (gm origin/master)

# 一般用 git pull 可取代 git merge

# 注意空格和斜杠的区别,什么时候用空格?

# push pull 用空格,其它用 / 斜杠,比如 merge checkout

git pull origin master (gl origin master)

# 删除远端分支用 git push 推空内容到远端

git push origin :mybranch (gp origin :mybranch)

# 打本地标签,git tag 系列 oh-my-zsh 大多没有简写,需要的话自己添加

git tag -a 8.1.0 

# 删除本地标签

git tag -d 8.1.0

# 查看本地标签

git tag

git tag -v

# 推送本地标签推到远端,用到了 git push

# 这两种好像没区别,所以用简单的吧

git push origin --tags  (gp origin --tags)

git push --tags  (gp --tags)

# 将指定本地标签推到远端,这里不能省略 origin

git push origin 8.1.0 (gp origin 8.1.0)

# 将状态整体回滚到某次提交

# 不加 --hard 的话,回退的代码会以红色状态出现,gst 可查看

# 加了 --hard 则完全回退到 commitId 对应的状态,gst 查看没有红色文件

git reset commitId 

git reset commitId --hard

# 将某次提交记录撤销,但整体历史不回滚

# 注意体会 revert 和 reset 区别

git revert commitId

# 查看远端源信息(即远端)

git remote -v (grv)

# 添加新的源并命名

git remote add duitangOrigin ssh://git@git.duitang.net:7999/fe/dtw-audit.git

# 删除源

git remote remove duitangOrigin

git 常见命令和资源的更多相关文章

  1. Git常见命令整理

    Git常见命令整理 + 注释 git init # 初始化本地git仓库(创建新仓库) git config --global user.name "xxx" # 配置用户名 gi ...

  2. git常见命令

    总结自己的Git常用命令 使用git也有一段时间了,把自己常用的命令用自己的描述记录起来,方便自己备忘也方便其他人参考. 目录: 最基本的命令: git clone 拷贝并跟踪远程的master分支. ...

  3. git 常见命令 和 git 原理图

    git 工作原理图:git 有4 个仓库 这是 git和 svn 一个巨大的区别,所以git 没网也能提交代码和查看记录. svn 只有2 个仓库 ,一个远程一个本地. 1 创建git 仓库(  参数 ...

  4. git 常见命令

    查看.添加.提交.删除.找回,重置修改文件 git help <command> # 显示command的help git show # 显示某次提交的内容 git show $id gi ...

  5. 分布式版本控制系统Git-----6.Git 常见命令一览表

    说明/备注 命令 备注 保存更新 git add [-i] -i 逐个确认 检查更新 git status 提交更新 git commit [-a] -m "<更新说明>&quo ...

  6. git 常见命令,规范 整理

    move commit to stage area(把本地的1个commit还原到 暂存区) git reset --soft HEAD~1 把其他的commit的合并到现在到分支:git cherr ...

  7. git 常见命令解析

    转载自http://www.rainkong.net/post/git-image.html 之前用的都是svn ,git还是要了解的,万一哪天要用了呢

  8. tp5 git 常见命令

    git clone git add . # 跟踪所有改动过的文件 git commit -m "commit message" # 提交所有更新过的文件 git checkout ...

  9. Pull Request的过程、基于git做的协同开发、git常见的一些命令、git实现代码的review、git实现版本的管理、gitlab、GitHub上为开源项目贡献代码

    前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull ...

  10. Git 常见的一些小命令

        Git 常见的一些命令 关于一些参数比较多,比较复杂的都有单独进行介绍         1. git cherry-pick 挑拣命令,当我们不想合并分支,或者git pull 更新仓库,而是 ...

随机推荐

  1. 系统Hosts文件原理和应用

    Hosts的概念 Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联"数据库",当用户在浏览器中输入一个需要 ...

  2. 深入浅出Java多线程(一):进程与线程

    引言 大家好,我是你们的老伙计秀才. 在计算机系统的发展历程中,早期的计算机操作模式十分单一和低效.用户只能逐条输入指令,而计算机则按照接收指令的顺序逐一执行,一旦用户停止输入或进行思考,计算机会处于 ...

  3. 深入探索OCR技术:前沿算法与工业级部署方案揭秘

    深入探索OCR技术:前沿算法与工业级部署方案揭秘 注:以上图片来自网络 1. OCR技术背景 1.1 OCR技术的应用场景 OCR是什么 OCR(Optical Character Recogniti ...

  4. CE修改器入门:代码替换功能

    某些游戏重新开始时,数据会存储在与上次不同的地方, 甚至游戏的过程中数据的存储位置也会变动.在这种情况下,你还是可以简单几步搞定它.这次我将尽量阐述如何运用"代码替换"功能,第五关 ...

  5. python截取字符串(字符串切片)

    python中使用[]来截取字符串,语法: 字符串[起始位置:结束位置] 一.起始位置:结束位置 先看几个例子: s = 'python' print(s) #输出 python 直接输出字符串 #从 ...

  6. MD5算法:高效安全的数据完整性保障

    摘要:在数字世界中,确保数据完整性和安全性至关重要.消息摘要算法就是一种用于实现这一目标的常用技术.其中,Message Digest Algorithm 5(MD5)算法因其高效性和安全性而受到广泛 ...

  7. 在Spring Cloud 2020中使用Consul配置中心遇到的问题

    升级Spring Cloud 2020后发现Consul配置中心失效了,配置中心的配置和bootstrap.yml中的配置都没有生效. 话不多说,先看官方文档:https://docs.spring. ...

  8. 内存泄漏定位工具之 mtrace(二)

    1 前言 mtrace(memory trace),是 GNU Glibc 自带的内存问题检测工具,它可以用来协助定位内存泄露问题.它的实现源码在glibc源码的malloc目录下,其基本设计原理为设 ...

  9. 深入浅出Java多线程(八):volatile

    引言 大家好,我是你们的老伙计秀才!今天带来的是[深入浅出Java多线程]系列的第八篇内容:volatile.大家觉得有用请点赞,喜欢请关注!秀才在此谢过大家了!!! 在当今的软件开发领域,多线程编程 ...

  10. electron useContentSize的详解

    useContentSize作用就是  由于window窗体有边框和title区域menu等,该区域不能显示自己的html页面(new BrowserWindow 时设置frame=false禁用边框 ...