git基操指南,提交回滚那些事~

这是我参与8月更文挑战的第10天,活动详情查看:8月更文挑战git

本文介绍的内容都是git基操、着重于提交回滚那些事,助力代码提交,看完能保证提交代码这块顺畅进行😄😄😄bash

基础信息查看

  • 远程查看markdown

    git remote show	// 查看主机名
    git remote -v 	// 查看关联远程链接
    复制代码
  • 帐号信息post

    git config user.email
    git config user.name
    复制代码

分支操做

  • 新建本地分支测试

    git checkout -b <分支名称> 	// 例如 git checkout -b shengjingyin
    复制代码
  • 新建远程分支ui

    git push <主机名> <本地分支名称>	// 建立的远程分支名称与本地分支同样
    
    git push <主机名> <本地分支名称>[:<远程分支名称>]	// 这样写,能够关联到不同名称的远程分支,例如 git push origin dev3:ayin,我本地是dev3,可是我远程建立的倒是ayin分支
    复制代码
  • 切换本地分支spa

    git checkout  <分支名称>	
    复制代码
  • 删除本地分支code

    git branch -d  <分支名称>	
    复制代码
  • 删除远程分支orm

    git push <主机名> --delete <远程分支名称>
    复制代码
  • 分支状态ip

    git branch <-a> //  查看本地分支,加了`-a`参数就是查询本地+远程分支,带*号的是当前分支,
    复制代码

正常开发提交流程

从网上down了一个示意图下来,感受比较齐全,涉及到工做区暂存区本地仓库远程仓库之间如何进行沟通(从右到左,我本意是想找个从左到右的,emm可是找不到,好难受啊😫)

git.png

一、工做区与暂存区之间的沟通

工做区提交到暂存区

正常提交时,以下三点所示:

  • 添加一个或多个有变动的文件到暂存区

    git add [file1] [file2] ...
    复制代码
  • 添加指定目录到暂存区,包括子目录

    git add [dir]
    复制代码
  • 添加当前目录下全部文件到暂存区

    git add .
    复制代码

暂存区返回到工做区

想让暂存区的内容返回到工做区,可用以下种方法:

  • 回退暂存区内指定文件

    git reset HEAD rainbow.txt start.txt
    复制代码
  • 回退暂存区内全部文件

    git reset HEAD *
    复制代码
  • 回退暂存区内某一类别文件

    git reset HEAD *.txt
    复制代码

二、暂存区与本地仓库之间的沟通

暂存区提交到本地仓库

  • 提交暂存区到本地仓库中

    git commit -m 'message'
    复制代码
  • 提交暂存区的指定文件到仓库区

    git commit [file1] [file2] -m [message]
    复制代码

本地仓库回退到工做区

已经将代码提交到本地仓库的代码,即已经进行 commit 操做,若是想撤销以前的修改,须要执行版本回退操做,回退后的文件会回到工做区,而不是暂存区。

  • 回退到上一个版本

    git reset HEAD^		// 上一个版本
     git reset HEAD^^	// 上上一个版本
     git reset HEAD^^^	// 上上上一个版本
     
     git reset <commit-id> 		// 回到指定版本
    复制代码
  • 回退到指定版本

    git log      // 查看提交记录,获取commit-id,下一步使用
     
     git reset <commit-id>   // 回到指定版本,须要上一步骤中的id
    复制代码

    tips:能够使用 git loggit reflog 命令来查看git的提交历史,获取commit-id

三、本地仓库与远程仓库之间的沟通

推送到远程仓库

  • 本地分支与远程分支已经创建联系

    git push
    
    git push -f	//  强制远端分支与本地分支同样,没事别搞这个,否则被骂了可别怪我😂
    复制代码
  • 本地分支与远程分支未创建联系

    这时候若是push,会提示如下信息,未创建远程关联的意思,人家已经把创建关联的代码都提示出来了,照着打就行

    image-20210809174344960.png

    git push --set-upstream origin dev		// 建立关联的同时,推送本地仓库代码到远程仓库关联分支(dev)
    复制代码

回退远程提交记录

有时候咱们提交到远程了,可是以为提交信息有误,或者提交了本地测试代码到远程上去了,这时候该怎么办呢?下面就来介绍一下怎么回退远程提交记录,分为两步骤:

我这里提供的方法不是惟一方法,若是有更好的方法,欢迎评论区回复,谢谢~

image-20210810101326410.png

  • 先回退本地仓库到指定版本

    git reset HEAD^		// 回退上一个版本,具体用哪一个方式须要看你本身的需求
    git reset <commit-id> 	// 回到指定版本
    复制代码
  • 再继续强推送

    git push -f	// 值得注意的是:你必须清楚的知道 -f 的做用!!!
    复制代码
  • 效果:能够看到1分钟前的那条提交记录已经没有了

    image-20210810101445466.png

本章小结

本节主要介绍开发完代码,如何去建立分支、提交代码的一个总体流程,关于各类回退的方式我相信大佬们也还有其余的方式,我这提供的也就只是日常开发的一个正常操做,没什么奇淫巧计,若是你有更好的方式,欢迎评论区回复,以免其余人中了个人圈套😂😂😂

下章节我将继续介绍git的一些进阶操做:例如如何解决代码合并冲突、临时储存代码等等~~

相关文章
相关标签/搜索