第一次写博客,内心有点小激动呀!首先祝大家圣诞快乐~~啦啦啦~~好了,我要步入正题啦!今天是上班第二周,终于开始写需求啦!开森~~撒花~~

来这里第一个要学的就是git的操作啦!入职第一天发了一个大大的git操作流程文档,下面我就整理一下,为了我日后复习,大家可以一起学习。

一,理论的东西

首先介绍一下git 一个分布式管理工具,相信大家对svn有了解的

至于区别嘛!我贴出来啦~

分布式/集中

差异存储/完整备份

节点树分支/文件夹分支

独立版本号/全局版本号

学习git 首先要知道这四个概念:

workspace 工作区

index 暂存区

本地仓库

远程仓库

具体关系看图:

二,git相关配置

Git config 本地化配置相关

git config --list 查看所有的config配置

git config --global [--system] 选择配置环境 g:用户,s:系统

git config user [name/email] 配置用户名和邮箱

git config --global

color.diff=auto

color.branch=auto

color.interactive=auto

color.status=auto

alias.st=status

alias.ci=commit

alias.br=branch

alias.co=checkout

alias.df=diff

push.default=current

git branch --set-upstream-to=origin/<branch> branch

三,git常用命令

  • git add [-A].

添加到暂存区,或使用git add file添加指定文件

-A 有删除文件的动作时使用

  • git commit -m ‘msg’ [--amend]

提交到本地仓库 --amend 和上一次的commit合并

  • git pull [--rebase] [仓库] [分支:分支]

更新远程代码到本地,相当于 fetch + merge

--rebase 以变基方式更新。

[仓库] [分支:分支]指定仓库分支。

git branch --set-upstream-to=origin/<branch> branch

  • git push [-f] 仓库 分支

提交本地更新到远程, push.default=current

  • git status

查看仓库状态


  • git fetch

获取远程的更新(不会合并到仓库和工作区)

  • git merge

[分支/节点] 合并分支或更新节点,有代码差异时会新建节点

  • git rebase

分支 [--continue | --abort | --skip] 变基操作,逐个合并节点,并提示修复冲突

  • git log [-p] [—-stat] [file][节点/分支]

查看日志

-p:查看文件详细

--stat:只查看修改文件列表

file : 查看指定文件

--oneline --graph --author

  • git statsh [list] [pop] [apply]

临时搁置已修改的代码

list :查看搁置的记录

apply:恢复某次搁置记录(不删除)

pop: 恢复并删除上一次搁置的记录


  • git checkout [-b] [分支/节点]

切换分支/节点

-b 创建并切换到一个分支

可以从暂存区取出文件

  • git diff [--cache] [节点]..[节点]

查看修改内容差异

默认查看工作区和仓库的区别。

--cache 查看工作区和暂存区区别

[节点]..[节点]:查看节点和节点的区别

…和..区别

  • git blame [节点] file

查看文件中具体某行的书写人:

[节点]: 指定某个节点的文件状态

  • git branch [-a] [-d/D]

操作分支

-a 所有的分支,含线上

-d 删除分支,-D强制删除


git show [节点] 查看节点信息

git clone 克隆一个远程仓库

git init 本地生产一个仓库

git remote [add] [-v] 查看、操作仓库信息 add 添加一个远程地址

git reflog 查看仓库操作日志(用于找回操作历史)

git reset [—hard] [节点] 回退版本 (历史回退) —hard 覆盖工作区

git revert [-n|e] 节点 回退版本 (历史递增) -n 不自动commit -e 可以编辑提交信息

git rm –cached 删除文件,相当于 rm + add -A cached从暂存区删除,取消跟踪。

git clean –df 清理未跟踪的文件

git cherry-pick [-n] 拣选某个节点 -n 执行完不进行commit

   为了方便大家查找,附上一张图图(ps:图图是我辛苦盗来得的,哈啊~~)

最后最后,以上都是基础的东西。关于冲突处理,以及在多人协同开发中的使用,下期我在更新呀~~~~

(ps:自己在努力学习研究中,脑子是个好东西呀~~~)

欢迎大家交流,还是一只小菜鸟~~~~扑腾中,希望大佬们不吝赐教啦啦啦~~撤啦撤啦,bug还没改完呢!

仰天长啸~~~~~ing

 

Git知多少!!!的更多相关文章

  1. 二、python框架相关知识体系

    Django框架 1.django框架.flask框架和Tornado框架的区别? django框架,内置组件多,自身功能强大,是一个大而全的框架,ORM.Admin.中间件.Form.ModelFr ...

  2. 吐血整理:PyTorch项目代码与资源列表 | 资源下载

    http://www.sohu.com/a/164171974_741733   本文收集了大量基于 PyTorch 实现的代码链接,其中有适用于深度学习新手的“入门指导系列”,也有适用于老司机的论文 ...

  3. 转 Pytorch 教学资料

    本文收集了大量PyTorch项目(备查) 转自:https://blog.csdn.net/fuckliuwenl/article/details/80554182 目录: 入门系列教程 入门实例 图 ...

  4. VS Code 安装与配置(使用MSYS2环境与mingw-w64 编译环境)

     更正了顺序,之前不知道怎么回事,内容顺序乱了 力求完美.详细,所以希望懂的人留言指点一下. 目前已经开始添加原理解释,希望大家能分享一些gcc gdb C语言等方面优秀链接 后续会慢慢增添内容,修正 ...

  5. Git / 程序员需要知道的12个Git高级命令

    众所周知,Git目前已经是分布式版本控制领域的翘楚,围绕着Git形成了完整的生态圈.学习Git,首先当然是学习Git的基本工作流.相比于SVN等传统版本控制系统来说,Git是专为分布式版本控制而生的强 ...

  6. 必会必知git

    git必会必知   1 前言 git前身是BitKeeper,但是他不是开源软件,不符合当时开源趋势,于是就会有了开源的git,git开发只用了十天时间.目前git是公司开发必不可少的一个工具,用于多 ...

  7. Git开发必知必会

    比如说你现在准备写一个自己的视频资源网站,在创业初期,你的项目暂时还是测试阶段,没有用户的时候,你可能只有一个人在开发,你每天都以写的内容和时间作为文件名的命名,这样其实是可以满足你对版本控制的基本需 ...

  8. git必知必会

    1. Git 配置 --system #系统级别--global #用户全局--local #单独一个项目 git config --global user.name "xxxx" ...

  9. python预科前三天:计算器知识、Python下载和安装、Pycharm下载安装激活设置、解释型和编译型、git、思维导图、显示隐藏文件、隐藏已知文件扩展名、创建组织、创建项目、提交作业、排BUG技巧

    1.计算机组成结构:CPU.硬盘.内存.输入输出设备.主板.电源. 2.硬件之间的协作关系:是CPU运算完后给操作系统.专业术语叫指令. 3.键盘输入a之后发生的事情:键盘-CPU-操作系统-显卡-显 ...

随机推荐

  1. Java并发编程指南

    多线程是实现并发机制的一种有效手段.在 Java 中实现多线程有两种手段,一种是继承 Thread 类,另一种就是实现 Runnable/Callable 接口. java.util.concurre ...

  2. ZZCMS8.2 用户密码重置漏洞

    前言 一个找回密码处的逻辑漏洞, 还是有点意思的. 正文 首先是定位找回密码功能对应的代码位置,使用找回密码的功能,然后抓包即可 下面去 getpassword.php 里面看看, 首先包含了一些文件 ...

  3. Datastage重启服务

    使用DS开发job时,偶尔一个Job出现卡死现象,导致工作不能进展下去,有时候需要重启datastage服务才可以. DataStage在正常运行时候有以下两个主要的进程: (1)dsrpcd(DS的 ...

  4. 通过runtime打印出对象所有属性的值

    通过runtime打印出对象所有属性的值 今天给给大家提供的关于NSObject的category,通过runtime打印属性的值,相当有用哦,以后你再也不用每个对象都通过NSLog来逐个打印属性值了 ...

  5. Jenkins定时构建和轮询SCM设置说明

    看图说事: 一.定时构建:不管SVN或Git中数据有无变化,均执行定时化的构建任务 : 二.轮询SCM:只要SVN或Git中数据有更新,则执行构建任务: 三.构建语法说明: 1.首先格式为:* * * ...

  6. UNIX高级环境编程(8)进程环境(Process Environment)- 进程的启动和退出、内存布局、环境变量列表

    在学习进程控制相关知识之前,我们需要了解一个单进程的运行环境. 本章我们将了解一下的内容: 程序运行时,main函数是如何被调用的: 命令行参数是如何被传入到程序中的: 一个典型的内存布局是怎样的: ...

  7. 阿里云全球首次互联网8K直播背后的技术解读

    3月28日,云栖大会·深圳峰会现场,阿里云发布并现场演示了阿里视频云最新8K互联网直播解决方案.这是全球发布的首个8K视频云解决方案,也是全球首次8K互联网视频直播. 视频地址:https://v.q ...

  8. 用HashSet存储自定义对象

      案例 package cn.itcast_02; import java.util.HashSet; /* * 需求:存储自定义对象,并保证元素的唯一性 * 要求:如果两个对象的成员变量值都相同, ...

  9. 函数的调用 and 打印返回值 ret= mai() print(ret)

    def mai(): # mai 函数名 (yan) 形式参数 print("老板,给我一包中华") return"给你" # 返回值-- 给你ret = ma ...

  10. RTCM32编解码中的一些概念及相关文献阅读

    1. IODC和 IODE ——  导航电文相关.iode/iodc是在GPS系统的ICD2中定义的参数,iode指星历数据事件,iodc指星钟数据事件. IOD 是 issue of data ,数 ...