git是一个分布式版本控制器,简单来说就是可以记录每次代码的修改和提交,方便我们查看修改记录和版本的回退

工作流程

基本概念

  • 仓库
    git 是一个分布式版本控制器,其单位就是仓库,每个仓库就是当前git管理的总和

  • 远程仓库
    远程仓库有时也称为中心仓库,所有的代码push到的地方,理论上来说,因为git是分布式的,所以我们可以把任意一个仓库作为远程仓库来使用。不过一般我们为了统一,都会统一使用一个作为中心仓库。

  • 本地仓库
    就是git所管理的本地项目

  • 暂存区
    代码提交会先提交到暂存区,当时间合适的时候才推到远程服务区,在暂存区中,我们可以查看当前文件和上次修改之间的不同。

  • 分支
    在主时间线上可以分出一个分支来开发我们的新代码,当全部测试完之后,我们可以将分支push到主线上并删除当前开发使用的分支。
    在我的理解中,一个分支相当于一个暂存区空间,不同的分支独立拥有自己的暂存区

命令

git 相关命令较多,建议还是多用man git 或者 加--help 参数查看说明

基本命令

  • 初始化空仓库:git init
  • 查看当前暂存区情况(和上次commit的不同):git status
  • 添加指定文件的修改到暂存区: git add [file_name]
  • 添加当前路径下所有文件到暂存区: git add .
  • 提交代码至暂存区: git commit -m "[desc]"
  • 查改提交记录: git log
  • 查看当前暂存区情况(和上次commit的不同):git status
  • 查看远程仓库:git remote -v
  • 查看分支:git branch
  • 切换分支: git checkout [branch]
  • 从当前分支fork出新分支: git checkout -b [branch]
  • 从远程仓库拉取:git pull
  • push master 分支的所有提交至远程(其它分支同理): git push origin master
  • 查看当前文件的改动: git diff

常用

代码修改到一半,想回到上次提交,又不想commit。

  • 暂时保存当前更改,且暂存区干净(回到上次commit): git stash
  • git stash 之后恢复:git stash pop

打补丁和应用补丁

  • 生成补丁(根据当前分支和master的不同):git diff master > patch
  • 应用补丁(在master分支上):git apply patch
  • 检查补丁是否干净: git apply --check

查看指定文件详细改动历史: git log -p [file]
查看文件提交记录: git log -- [file]
查看指定commit提交的改动:git show [commit_id]

git 简单使用(待完善)的更多相关文章

  1. 小丁带你走进git世界一-git简单配置

    小丁带你走进git世界一-git简单配置 1.github的简单配置 配置提交代码的信息,例如是谁提交的代码之类的. git config  –global user.name BattleHeaer ...

  2. git简单入门

    git简单入门 标签(空格分隔): git git是作为程序员必备的技能.在这里就不去介绍版本控制和git产生的历史了. 首先看看常用的git命令: git init git add git comm ...

  3. Git简单生成生成公钥和私钥方法

    Git简单生成生成公钥和私钥方法 Git配置 Git安装完之后,需做最后一步配置.打开git bash,分别执行以下两句命令 git config --global user.name “用户名” g ...

  4. 猫猫学iOS 之第一次打开Xcode_git配置,git简单学习

    猫猫分享,必须精品 原创文章,欢迎转载.转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243 一:错误 当第一次打开Xcode我们进行commit操作的时候会 ...

  5. Git简单多人协作

    感谢廖雪峰老师,引自他的Git教程. Git简单多人协作 首先,可以试图用git push origin <branch-name>推送自己的修改: 如果推送失败,则因为远程分支比你的本地 ...

  6. Git简单应用(1)

    Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 1.Windows安装git msysgit是Windows版的Git,从https://git-for-windows. ...

  7. GIT简单操作

    以下只是简单的bash的操作命令,个人比较喜欢用gui 打开 git bash here git clone https://github.com/自己的名字/trunk git checkout + ...

  8. git简单使用和说明文件的书写

    一. git 简单使用 1.注册 https://github.com/ 2.初始化 配置 git config --global user.name "Your Name" gi ...

  9. 在win7系统下使用TortoiseGit(乌龟git)简单操作Git@OSC

    非常感谢OSC提供了这么好的一个国内的免费的git托管平台.这里简单说下TortoiseGit操作的流程.很傻瓜了 首先你要准备两个软件,分别是msysgit和tortoisegit,乌龟还可以在下载 ...

随机推荐

  1. Big Data Opportunities and Challenges(by周志华)论文要点

    大数据环境下的机器学习 三种误解:模型不再重要(大量数据上复杂模型依然提升显著,大数据是的复杂模型充分利用数据且难以过拟合),相关性就足够了(因果关系重要性无法被替代),以前的研究方向不再重要(高性能 ...

  2. Dropping Balls UVA - 679(二叉树的遍历)

    题目链接:https://vjudge.net/problem/UVA-679 题目大意:t组样例,每组包括D M   层数是D   问第M个小球落在哪个叶子节点?    每个节点有开关  刚开始全都 ...

  3. 细讲递归(recursion)

    首先先对递归进行入门. 递归是以自相似的方式重复项目的过程.在编程语言中,如果程序允许您在同一函数内调用函数,则称其为函数的递归调用. 简而言之,递归就是函数的自身调用.可以看看下面的递归使用: vo ...

  4. 案例53-crm练习修改客户功能实现

    1 CustomerAction 完整代码: package www.test.web.action; import java.io.File; import org.apache.commons.l ...

  5. HDU 4578——Transformation——————【线段树区间操作、确定操作顺序】

    Transformation Time Limit: 15000/8000 MS (Java/Others)    Memory Limit: 65535/65536 K (Java/Others)T ...

  6. oracle 找回被覆盖的存储过程

    登录到sys账户下 1.TO_TIMESTAMP('2014-05-04 14:33:00', 'YYYY-MM-DD HH24:MI:SS') 删除前的日期 2.owner 表空调 3.Name   ...

  7. 解决navicate 连接mysql数据库中文乱码的问题

    以下均是ubuntu12.04为准 1.修改mysql的配置文件. 1.1.vi  /etc/mysql/my.conf找到[client]在其下面添加 default-character-set=u ...

  8. sql数据库基础知识整理,常用函数及常用语法

    1常用数据库聚合函数max()min()sum()avg()count() 2字符串处理函数len() 与 datalength()  区别:len是返回字符长度  datalength是返回字节长度 ...

  9. 微软RPC技术学习小结

    RPC,即Remote Procedure Call,远程过程调用,是进程间通信(IPC, Inter Process Communication)技术的一种.由于这项技术在自己所在项目(Window ...

  10. 搭建日志环境并配置显示DDL语句

    现在一般用log4j用的比较多,用slf4j用的比较少,所有这里我们就不用 hibernate内置的slf4j了. 用到slf的接口,log4j的实现. 要在hibernate中使用log4j,如图所 ...