Git常用命令

        Git是一个开源的版本控制系统。区别于其它版本控制系统例如SVN等,它是分布式的。

        我们使用Git的一般工作流程如下:

  • 克隆 Git 资源作为工作目录。
  • 在克隆的资源上添加或修改文件。
  • 如果其他人修改了,你可以更新资源。
  • 在提交前查看修改。
  • 提交修改。
  • 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。

        当然,相信很多人都对它的用法非常的熟悉,这不是这篇文章的重点。接下来我主要整理一下Git的一些常用命令,帮助大家在工作中更好地使用GIt。

一、基础命令 

0.

(1) git init:初始化本地库

(2) git status:查看工作区、暂存区的状态

(3)git add <file name>:将工作区的“新建/修改”添加到暂存区

(4)git rm --cached <file name>:移除暂存区的修改

 

1. git commit (<file name>):将暂存区的内容提交到本地库

  • –m “本次提交描述”:该命令会将git add .存入暂存区修改内容提交至本地仓库中
  • –am “本次提交描述” 或  –a –m “本次提交描述”:会自动把修改的文件,先暂存,然后直接commit 。相当于git add . 与git commit –m “本次提交描述” 两句操作合并为一句进行使用
  • -s:会弹出vim 文本编辑器,让你编写提交备注(-s命令可以自动加上Signed-off-by信息,并且可以其他参数一起使用)
  • --amend:改变当前分支最近的一次提交,用新提交取代了原始提交 

2. git branch <your-branch-name>:创建一个新分支

  • -f <your-branch-name>:指向其他分支的一个提交,例如:git branch -f master HEAD~3  

3. git checkout   <your-branch-name>/<提交号>/相对引用:切换到某个分支或某次提交

  • -b <your-branch-name>:创建一个新的分支同时切换到新创建的分支 (= git branch <your-branch-name> + git checkout <your-branch-name>)
  • -t <remote-branch-name>:在本地新建同名的分支,并切换到该分支(=git checkout -b branch-name origin/branch-name)

4. git merge/rebase <target-branch-name>:合并分支

区别:

-Merge:把 bugFix 分支合并到 master 分支上。从 master 开始沿着箭头向上看,在到达起点的路上会经过所有的提交记录。

-Rebase:把 bugFix 分支里的工作直接移到 master 分支上。移动以后会使得两个分支的功能看起来像是按顺序开发,但实际上它们是并行开发的。

Rebase 的优势就是可以创造更线性的提交历史,取出一系列的提交记录,“复制”它们,然后在另外一个地方逐个的放下去。如果只允许使用 Rebase 的话,代码库的提交历史将会变得异常清晰。

    进阶用法:

    使用 -i 选项,即交互式(interactive)rebase命令,所谓交互式命令,Git会打开一个 UI 界面并列出将要被复制到目标分支的备选提交记录,它还会显示每个提交记录的哈希值和提交说明,提交说明有助于你理解这个提交进行了哪些更改。

5. git log:查看提交记录与对应的提交号(哈希值

    1)通过哈希值定位提交记录的方式为绝对引用

    2)定位提交记录也使用相对引用,其中相对引用的参照可以是HEAD,也可以是分支(代表该分支的当前节点)。

  • 使用 ^ 向上移动 1 个提交记录
  • 使用 ~<num> 向上移动多个提交记录,如 ~3

         查看当前HEAD的指向的两个命令:

  • cat .git/HEAD
  • git symbolic-ref HEAD

补充:空格向下翻页,b向上翻页,q退出

6. git reset/revert <提交号>:撤销提交

区别:

-Revert 是用一次新的commit来回滚之前的commit,此次提交之前的commit都会被保留;

-Reset 是回到某次提交,该提交及之前的commit都会被保留,但是此提交之后的commit都会被删除

  • --soft xxx:用于将文件提交至本地仓库后撤回暂存区的操作
  • --hard xxx:会将工作区、暂存区、本地仓库的所有提交的文件全都撤销

7. git cherry-pick <提交号>...:将一些提交复制到当前所在的位置(HEAD)下。

8. git clone <远程库地址>:克隆远程库

  功能:①完整的克隆远程库为本地库,②为本地库新建origin别名,③初始化本地库

9. git fetch:将本地仓库中的远程分支更新成了远程仓库相应分支最新的状态。

注意: git fetch 并不会改变你本地仓库的状态。它不会更新你的 master 分支,也不会修改你磁盘上的文件。可以将 git fetch 的理解为单纯的下载操作。

10. git pull:实际上相当于 git fetch 和 git merge 的缩写。

  • --rebase:实际上相当于 git fetch 和 git rebase 的缩写

11. git push:负责将你的变更上传到指定的远程仓库,并在远程仓库上合并你的新提交记录。

二、高级命令

1. git tag:为某次提交打上标签。(通常在发布软件的时候打一个tag ,tag 会记录版本的提交号,方便后期回溯)

  • -l "关键字":过滤tag

2. git describe:显示当前离当前提交最近的tag。如果符合条件的tag指向最新提交则只是显示tag的名字,否则会有相关的后缀来描述该tag之后有多少次提交。

3. git bisect:查找哪一次代码提交引入了错误

4. git stash:将当前的工作状态保存到git栈,并且将当前代码切换到 HEAD 上

  • + pop:恢复git栈中的一个stash,默认恢复最新的stash
  • + apply:恢复被隐藏的文件,但是git栈中的这个不删除
  • + list:查看所有被隐藏的stash列表
  • + show:显示stash的内容具体是什么,如 git stash show stash@{0}
  • + drop:删除指定的一个stash,默认删除最新的stash
  • + clear:删除所有存储的stash

5. git reflog:以简洁的一行显示,包含简洁哈希索引值,同时显示移动到某个历史版本所需的步数

6. git diff:查看所有被隐藏的文件列表

  • --cached([file]):显示暂存区和上一次commit的差异
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
4S店客户管理小程序-毕业设计,基于微信小程序+SSM+MySql开发,源码+数据库+论文答辩+毕业论文+视频演示 社会的发展和科学技术的进步,互联网技术越来越受欢迎。手机也逐渐受到广大人民群众的喜爱,也逐渐进入了每个用户的使用。手机具有便利性,速度快,效率高,成本低等优点。 因此,构建符合自己要求的操作系统是非常有意义的。 本文从管理员、用户的功能要求出发,4S店客户管理系统中的功能模块主要是实现管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理,用户客户端:首页、车展、新闻头条、我的。门店客户端:首页、车展、新闻头条、我的经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与4S店客户管理系统实现的实际需求相结合,讨论了微信开发者技术与后台结合java语言和MySQL数据库开发4S店客户管理系统的使用。 关键字:4S店客户管理系统小程序 微信开发者 Java技术 MySQL数据库 软件的功能: 1、开发实现4S店客户管理系统的整个系统程序; 2、管理员服务端;首页、个人中心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理等。 3、用户客户端:首页、车展、新闻头条、我的 4、门店客户端:首页、车展、新闻头条、我的等相应操作; 5、基础数据管理:实现系统基本信息的添加、修改及删除等操作,并且根据需求进行交流信息的查看及回复相应操作。
现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本微信小程序医院挂号预约系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此微信小程序医院挂号预约系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的MySQL数据库进行程序开发。微信小程序医院挂号预约系统有管理员,用户两个角色。管理员功能有个人中心,用户管理,医生信息管理,医院信息管理,科室信息管理,预约信息管理,预约取消管理,留言板,系统管理。微信小程序用户可以注册登录,查看医院信息,查看医生信息,查看公告资讯,在科室信息里面进行预约,也可以取消预约。微信小程序医院挂号预约系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值