Git初探--笔记整理和Git命令详解
几个重要的概念
首先先明确几个概念:
WorkPlace : 工作区
Index: 暂存区
Repository: 本地仓库/版本库
Remote: 远程仓库
当在Remote(如Github)上面clone一个项目到本地时(假设项目名为GitTest),在本地就会看到一个名为GitTest的目录,目录下有项目代码和一个名为.git的目录,什么是工作区呢,就是除了.git文件夹以外的所有东西,我们主要在工作区上阅读,修改,添加删除代码和其他内容,而这个.git目录就称为一个版本库,这个版本库中存放有很多东西,比如有Git为我们自动创建的一个master分支一个指向该分支的一个Head指针,其中就有一个名称为index的区域,就是暂存区,下面盗个图:

Git命令详解
git init 将当前目录初始化为一个git可以管理的仓库
git clone [url] 从指定的url下载一个项目到当前目录,自动将其变为一个git仓库
git config [--global] user.name "zhangSan" git config [--global] user.email "zhangsan@qq.com"
顾名思义设置一个用户名和邮箱,主要用于在提交代码时显示,方便别人知道这个代码是谁提交的,但只在当前仓库中起作用,如果加上----global参数 则会在所有仓库都显示这个用户名和邮箱.
git add 文件 :添加指定文件到暂存区
git add -A: 添加当前工作区所有修改文件到暂存区
git commit -m "...." :将暂存区的内容提交到本地仓库,省略号中的内容最好是有意义的注释,方便自己和别人以后查看.
git status 查看当前仓库的状态,能够清晰地看到哪些文件修改了,哪些文件在暂存区等信息
git diff 文件名 :如果文件修改了,已经添加到暂存区,我们希望看一下文件具体哪些内容被修改了,可以使用此命令,能够看到具体修改了的内容
git log 查看项目的提交日志,包含一个版本号,提交者的名称和邮箱,提交日期,以及提交时添加的注释.
git reset --hard HEAD^ :回退到上一个版本,如果使用两个^就是回退到上上个版本
git reset --hard 76786554 :根据版本号回退到指定版本,版本号可以通过git log 查看,版本号很长,取前几位即可
git checkout --a.txt :撤销对a.txt的修改,这里分两种情况,1 如果a.txt已修改,但未提交到暂存区,则会将a.txt撤销到和版本库相同的状态. 2 如果a.txt已经添加到暂存区又做了修改,则会将a.txt撤销到刚添加到暂存区时候的状态.
git reset HEAD a.txt :如果a.txt已经修改并添加到暂存区,但我们希望将它撤回到工作区,使用此命令
git rm a.txt :从版本库中删除a.txt
git pull <远程主机名> <远程分支名>:<本地分支名>: 取回远程主机某个分支的更新,再与本地的指定分支合并
git pull origin develop:master: 取回远程主机的develop分支与本地的master分支合并
git push <远程主机名> <本地分支名>:<远程分支名>: 将本地指定分支的更新,推送到远程主机的指定分支
git push origin master :将本地库的master分支项目push到远程库中
git branch :查看当前分支
git branch -r:查看远程分支
git branch -a: 查看所有分支
git branch develop:从当前分之中创建一条名为develop的分支
git checkout develop:从当前分支跳转到名为develop的分支上去
git checkout -b develop :从当前分支创建一条名为develop的分支并且跳转到该分支上去,相当于上面两条命令的简化
git merge develop:将名为develop的分支合并到当前分支上来
git branch -d develop: 将名为develop的分支删除
git 的命令还有很多,比较常用的就是这些,以后碰到了再随时补充吧~
Git初探--笔记整理和Git命令详解的更多相关文章
- [ kvm ] 学习笔记 5:QEMU-KVM 命令详解
1. QEMU.KVM .QEMU-KVM QEMU 提供了一系列的硬件模拟设备(cpu.网卡.磁盘等),客户机指令都需要QEMU翻译,因此性能较差.KVM 是Linux 内核提供的虚拟化模块,负责C ...
- Linux笔记之——Linux关机命令详解(转)
原文连接:http://www.jb51.net/os/RedHat/1334.html 在linux下一些常用的关机/重启命令有shutdown.halt.reboot.及init,它们都可以达到重 ...
- linux命令学习笔记-kill和killall命令详解
*杀死进程最安全的方法是单纯使用kill命令,不加修饰符,不带标志. 首先使用ps -ef命令确定要杀死进程的PID,然后输入以下命令: # kill -pid 注释:标准的kill命令通常都能达到目 ...
- Git命令详解
一个中文git手册:http://progit.org/book/zh/ 原文:http://blog.csdn.net/sunboy_2050/article/details/7529841 前面两 ...
- Git 常用命令详解
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- Git 常用命令详解(二)
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- 【转】 Git 常用命令详解(二)----不错
原文网址:http://blog.csdn.net/ithomer/article/details/7529022 Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如: ...
- git命令详解( 七 )
此为git命令详解的第七篇 这章我们可以来逐渐揭开 git push.fetch 和 pull 的神秘面纱了.我们会逐个介绍这几个命令,它们在理念上是非常相似的. git push的参数 git ...
- git命令详解( 四 )
此篇为git命令详解的第四篇,话不多说,我们直接上知识点好吧 git Push 偏离的工作 gitPush: 此命令负责将你的变更上传到指定的远程仓库,并在远程仓库上合并你的新提交记录.一旦 git ...
随机推荐
- 【原创分享·支付宝支付】HBuilder打包APP调用支付宝客户端支付
前言 最近有点空余时间,所以,就研究了一下APP支付.前面很早就搞完APP的微信支付了,但是由于时间上和应用上的情况,支付宝一直没空去研究.然后等我空了的时候,发现支付宝居然升级了支付逻辑,虽然目前还 ...
- [C#] C# 基础回顾 - 匿名方法
C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...
- .NetCore中的日志(1)日志组件解析
.NetCore中的日志(1)日志组件解析 0x00 问题的产生 日志记录功能在开发中很常用,可以记录程序运行的细节,也可以记录用户的行为.在之前开发时我一般都是用自己写的小工具来记录日志,输出目标包 ...
- 继电器是如何成为CPU的(1)
继电器是如何成为CPU的(1) ——<穿越计算机的迷雾>整理和总结 究竟是如何设计的电路,具有计算和控制的智力? 这一点也不高深.本系列文章从初中学的最简单的电路图说起,看看能不能从最初的 ...
- 菜鸟学Struts2——Interceptors
昨天学习Struts2的Convention plugin,今天利用Convention plugin进行Interceptor学习,虽然是使用Convention plugin进行零配置开发,这只是 ...
- Python的单元测试(一)
title: Python的单元测试(一) author: 青南 date: 2015-02-27 22:50:47 categories: Python tags: [Python,单元测试] -- ...
- React在开发中的常用结构以及功能详解
一.React什么算法,什么虚拟DOM,什么核心内容网上一大堆,请自行google. 但是能把算法说清楚,虚拟DOM说清楚的聊聊无几.对开发又没卵用,还不如来点干货看看咋用. 二.结构如下: impo ...
- Webpack 配置摘要
open-browser-webpack-plugin 自动打开浏览器 html-webpack-plugin 通过 JS 生成 HTML webpack.optimize.UglifyJsPlugi ...
- [C#] 进阶 - LINQ 标准查询操作概述
LINQ 标准查询操作概述 序 “标准查询运算符”是组成语言集成查询 (LINQ) 模式的方法.大多数这些方法都在序列上运行,其中的序列是一个对象,其类型实现了IEnumerable<T> ...
- Kooboo CMS技术文档之一:Kooboo CMS技术背景
语言平台 依赖注入方案 存储模型 1. 语言平台 Kooboo CMS基于.NET Framework 4.x,.NET Framework 4.x的一些技术特性成为站点开发人员使用Kooboo CM ...