最新博客链接:https://feiffy.cc/Git

日常用到的GIT的一些操作,记下来,以备参考。

删除文件

git rm filename
git commit -m "remove filename"

如果删错了,可以恢复为版本库里最新的版本

git checkout -- filename

修改操作

隐藏临时修改

正在做一个功能的时候,突然来了bug修复任务,这时就需要先把当前分支上未提交的修改隐藏,然后切换到bug分支上修复bug,完成后提交并合并到原来的分支,再删除bug分支。

git stash
git checkout -b bugs
git commit -m "fix ...bugs"
git checkout master
git merge bugs
git branch -d bugs
git stash pop

注意,多次git stash操作会形成stash list,其名字按照stash@{0},stash@{1}命名,其中stash@{0}在最上面,git stash pop会恢复最上面的stash并删除该记录,然后原来的stash@{1}就变成了stash@{0},其结构类似栈。

git stash applygit stash pop都可用来恢复stash的内容,区别在于前者不会删除stash记录,而后者会删除已经恢复的stash记录。

git stash clear 清空所有的stash修改,如果你已经搞不清楚一团乱麻了,就清空它重头再来吧。

git stash list 查看 stash list

git stash show 查看最近一次stash即 stash@{0}保存的修改。

查看工作区修改(unstaged)

git status 比较简单,仅仅是列出了修改过的文件

git diff 查看具体修改的代码行

查看暂存区修改(staged)

git diff --staged

撤销工作区修改

git checkout --filename

这个操作一旦执行,就丢弃了所有未add的修改内容。

撤销暂存区修改

git reset HEAD .

git reset HEAD -- filename

即把暂存区的修改内容(staged)放回工作区(unstaged)中

分支操作

获取远程新分支到本地

git fetch
git checkout -q remote_branch

创建并切换到本地新分支(基于当前分支)

git checkout -b new_local_branch

一般的,凡是不是当前的工作的任务,比如bug修复或测试某些功能,我都会重新创建一个分支进行操作,因为创建新分支很快很方便也很安全,做完临时性的修改工作,再提交合并到原来的分支上,再删除创建的临时分支,简直完美。

创建本地新分支并推送到远程

git checkout -b new_local_branch
git push origin new_local_branch:remote_branch

远程分支名remote_branch随便怎么起,而且可以起多个,比如本地分支new_local_branch可以推动到远程test1,test2分支上,注意,这其实是在创建远程新分支,所以不能是已存在的远程分支名。

查看所有分支

查看所有远程分支:git branch -a

查看所有本地分支:git branch

删除分支

删除远程分支:git push origin :remote_branch

删除本地分支:git branch -d local_branch

常用 Git 操作的更多相关文章

  1. 常用Git操作

    --------------------git-------------------- 1.简介     1.Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.[1]  ...

  2. 个人常用Git操作记录

    本地分支与远程分支建立联系 Git - 新建本地分支与远程分支关联问题 查看本地分支与远程分支关系: git branch -vv 当前分支与远程分支建立关系: git branch --set-up ...

  3. git系列之---工作中项目的常用git操作

    0.本地git的安装 官网下载 1.git 配置 git config user.name  查看 用户名 git config user.email   查看 邮箱 git config --glo ...

  4. IDEA中的Git操作,看这一篇就够了!

    大家在使用Git时,都会选择一种Git客户端,在IDEA中内置了这种客户端,可以让你不需要使用Git命令就可以方便地进行操作,本文将讲述IDEA中的一些常用Git操作. 环境准备 使用前需要安装一个远 ...

  5. 工作中常用Git指令操作

    常用Git指令总结 前阵子有几天好不顺,可谓是喝水都呛着,更何况被Git给呛着了,还不轻,哈哈.所以打算总结一下自己在工作使用到Git相关的东西以及和大家探讨使用GIt的心得体会.于是,关于Git的的 ...

  6. git操作常用命令

    一.使用git 1.git是什么? Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己 ...

  7. Git常用的操作指令

    修改最后一次提交 有时候我们提交完了才发现漏掉了几个文件没有加,或者提交信息写错了.想要撤消刚才的提交操作,可以使用--amend 选项重新提交: 1 $ git commit --amend -m& ...

  8. Git 工作原理以及常用命令操作

    GIT工作原理 要了解GIT工作原理,先了解GIT的这几块区域: 工作区域划分 工作区:指的是本地工作空间,如果刚拉取下来的代码,没有修改的内容,这块区域是空白的 (modified-已修改状态) 暂 ...

  9. 工作中常用的Git操作--------(一)

    今天主要记录一下平常工作当中使用的git操作: 1.git的安装这里省略: 2.git的操作指令: 在项目开发中,经常是拉去经理已经搭建好的一个项目,也就是给我们一个git地址.比如:http://g ...

随机推荐

  1. Linux关机和重启命令总结

    一.shutdown 命令 作用:关闭或重启系统 使用权限:超级管理员使用 常用选项 1. -r 关机后立即重启 2. -h关机后不重启 3. -f快速关机,重启时跳过fsck(file system ...

  2. Redis(十七):批量操作Pipeline

    大多数情况下,我们都会通过请求-相应机制去操作redis.只用这种模式的一般的步骤是,先获得jedis实例,然后通过jedis的get/put方法与redis交互.由于redis是单线程的,下一次请求 ...

  3. OpenCV2马拉松第24圈——轮廓提取

    计算机视觉讨论群162501053 转载请注明:http://blog.csdn.net/abcd1992719g/article/details/27979267 收入囊中 在图片中找到轮廓而且描绘 ...

  4. vuex中store分文件时候index.js进行文件整合

    import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex); import getters from './getters.js' impo ...

  5. c#省市联动(sqlHelper的应用)

    sqlHelper: using System; using System.Collections.Generic; using System.Linq; using System.Text; usi ...

  6. 一款基于jQuery的图片下滑切换焦点图插件

    之前为大家分享了好多款jquery插件,今天我们要分享的一款jQuery插件也比较实用,是一款jQuery焦点图插件.焦点图相当普通,一共可以循环播放4张图片,并且每一张图片在切换的时候都是向下滑动的 ...

  7. 一份不错的php面试题(附答案)(笔试题)

    一.基础题1. 写出如下程序的输出结果 <?php $str1 = null; $str2 = false; echo $str1==$str2 ? '相等' : '不相等'; $str3 = ...

  8. Centos 挂载NTFS格式的USB硬盘

    公司的一台服务器本身硬盘容量较小,要加一块2T的硬盘,用来做samba服务器,以下是挂载硬盘的主要记录: 这是服务器不认NTFS格式的情况:mount: unknown filesystem type ...

  9. 扩展RBAC用户角色权限设计方案<转>

    RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角色- ...

  10. PHP——自定义函数

    <?php //定义有默认值的函数 function Main3($f=5,$g=6) { echo $f*$g; } Main3(2,3); echo "<br />&q ...