git 简单使用(待完善)
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 简单使用(待完善)的更多相关文章
- 小丁带你走进git世界一-git简单配置
小丁带你走进git世界一-git简单配置 1.github的简单配置 配置提交代码的信息,例如是谁提交的代码之类的. git config –global user.name BattleHeaer ...
- git简单入门
git简单入门 标签(空格分隔): git git是作为程序员必备的技能.在这里就不去介绍版本控制和git产生的历史了. 首先看看常用的git命令: git init git add git comm ...
- Git简单生成生成公钥和私钥方法
Git简单生成生成公钥和私钥方法 Git配置 Git安装完之后,需做最后一步配置.打开git bash,分别执行以下两句命令 git config --global user.name “用户名” g ...
- 猫猫学iOS 之第一次打开Xcode_git配置,git简单学习
猫猫分享,必须精品 原创文章,欢迎转载.转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243 一:错误 当第一次打开Xcode我们进行commit操作的时候会 ...
- Git简单多人协作
感谢廖雪峰老师,引自他的Git教程. Git简单多人协作 首先,可以试图用git push origin <branch-name>推送自己的修改: 如果推送失败,则因为远程分支比你的本地 ...
- Git简单应用(1)
Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 1.Windows安装git msysgit是Windows版的Git,从https://git-for-windows. ...
- GIT简单操作
以下只是简单的bash的操作命令,个人比较喜欢用gui 打开 git bash here git clone https://github.com/自己的名字/trunk git checkout + ...
- git简单使用和说明文件的书写
一. git 简单使用 1.注册 https://github.com/ 2.初始化 配置 git config --global user.name "Your Name" gi ...
- 在win7系统下使用TortoiseGit(乌龟git)简单操作Git@OSC
非常感谢OSC提供了这么好的一个国内的免费的git托管平台.这里简单说下TortoiseGit操作的流程.很傻瓜了 首先你要准备两个软件,分别是msysgit和tortoisegit,乌龟还可以在下载 ...
随机推荐
- 夜神模拟器连不上adb的解决办法
解决办法: 1.任务管理器里看下,adb.exe以及nox_adb.exe这2个进程有没有在运行?有的话就结束掉 2.找到开发环境的SDK的目录和夜神模拟器的目录,将SDK\platform-tool ...
- matlab 图像和 opencv 图像的相互转换
matlab可以生成C++代码, 但是在涉及图像数据的时候,要注意数据格式的转换. 1. Matlab图像数据在内存中的存放顺序是R通道图,G通道图,B通道图.对于每个通道,数据存放是先列后行. 2. ...
- [转]25个HTML5和JavaScript游戏引擎库
本文转自:http://www.open-open.com/news/view/27c6ed 1. The GMP JavaScript Game Engine GMP是一个基于精灵2-D游戏,它可以 ...
- 前端:移动端和PC端的区别
在阿里的几次面试中,总是被问到移动端和PC端有什么区别,当时回答的时候主要是回答了在兼容性.网速.适配.页面布局等方面的不同,但是还是很不系统,所以这里做一个总结. 第一: PC考虑的是浏览器的兼容性 ...
- Kudu的配置(官网推荐的步骤)(Configuring Apache Kudu)
不多说,直接上干货! http://kudu.apache.org/docs/configuration.html
- Collections练习之对字符串先折半,再取最长的一个
不多说,直接上干货! 代码需求 由 [aa, abcde, cba, cba, nbaa, zzz] 变成 max=abcde CollectionsDemo.java package zhouls. ...
- Zookeeper分布式集群部署
ZooKeeper 是一个针对大型分布式系统的可靠协调系统:它提供的功能包括:配置维护.名字服务.分布式同步.组服务等: 它的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效.功能稳定的 ...
- ASP.NET前端调用后台方法
<script> function MyConfirm() { if (confirm('存在重复记录,覆盖点继续,不覆盖追加保存点取消')) { ...
- FTL(FreeMarker)基础
FreeMarker标签使用一.FreeMarker模板文件主要有4个部分组成1.文本,直接输出的部分2.注释,即<#--...-->格式不会输出3.插值(Interpolation):即 ...
- MySQL GROUP_CONCAT长度限制引发的一场灾难
GROUP_CONCAT函数是对查处的分组数据对于分组列相同的数据合并成一列用逗号隔开的函数. 但是该函数的长度有个默认限制,默认是1024个字符,超过就会截断,从而导致用count统计GROUP_C ...