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. 主动学习(Active Learning)简介综述汇总以及主流技术方案

    0.引言 在机器学习(Machine learning)领域,监督学习(Supervised learning).非监督学习(Unsupervised learning)以及半监督学习(Semi-su ...

  2. 使用 arxiv-sanity &paperwithcode 跟进最新研究领域的文章

    1.arxiv-sanity介绍 arxiv.org是一个非常大的预印本资源库,里面有大量的最新的论文,但缺点是浏览.搜索和排序不是很方便.这个资源库每天会更新大量的论文,如果通过手动搜索和浏览则效率 ...

  3. Spring一套全通5—SSM整合

    百知教育 - Spring系列课程 - MVC框架整合 第一章.MVC框架整合思想 1. 搭建Web运行环境 <dependency> <groupId>javax.servl ...

  4. MySQL拓展知识

    一:视图 1:创建视图 1 --格式:CREATE VIEW 视图名称 AS SQL语句 2 CREATE VIEW v1 AS 3 SELET nid, 4 name 5 FROM 6 A 7 WH ...

  5. MongoDB 7.0 搭建 Sharding 副本集群

    本文是在ubuntu 22.03 系统版本上部署的,最低支持mongodb-6.0.4以上,所以这里安装mongodb7.0 1 安装mongo 安装方式有多种,本人是使用的第一种方式,时间也就20分 ...

  6. Python 元组详细使用

    1. 元组 元组和列表类似,但属于不可变序列,元组一旦创建,用任何方法都不可修改其元素. 元组的定义方式和列表相同,但定义时所有元素是放在一对圆括号"()"中,而不是方括号中. 1 ...

  7. Delphi TStringList 有趣的CommaText和DelimitedText

    CommaText 在没有指定StrictDelimiter=true的情况下,当列表中项中 包含 空格和逗号的时候就默认的 在这个字符串上面 增加 双引号 很智能吧 例子1: var MyList: ...

  8. Educational Codeforces Round 136 (Rated for Div. 2) A-E

    比赛链接 A 题解 知识点:模拟. 所有点都跑一遍即可. 另外可以不模拟, \(\geq 2*2\) 的情况都可以摆在 \((2,2)\) 这个点,其他摆在 \((1,1)\) . 时间复杂度 \(O ...

  9. kotlin--Object关键字

    1.匿名内部类 Object可以实现,继承一个抽象类的同时,实现多个接口. interface A { fun funA() } interface B { fun funB() } abstract ...

  10. 【framework】WindowContainer简介

    1 前言 ​ WindowContainer 继承自 ConfigurationContainer,是 WMS 家族的重要基类.ConfigurationContainer简介 中,已介绍 Confi ...