git 快速入门
介绍git的基本知识、文件状态、工作区域以及一个简单的操作示例。
目录
1. git相关介绍
2. 文件状态与工作区域
3. 快速使用
1. git相关介绍
1.1 git、github、gitlab所代表的意思
git:一种分布式的版本控制工具,每个计算机保存了所有历史记录(Svn为集中式的)。
github:一个使用git的代码托管平台。
gitlab:一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。可比喻为自己内网搭建个github。
1.2 app下载
1) git for windows
说明:使用git的基础软件,可分为了git bash(命令行版本) 和git gui(图像用户界面版本)。
地址:https://git-scm.com/downloads
2) TortoiseGit
说明:提供了与TortoiseSvn一样的操作方式。
1.3 托管平台
1) github
说明:国外的git托管平台。创建私有仓库需要付费。
2) 码云
说明:国内oschina的git托管平台。可免费创建私有仓库。
1.4 手册
在线API:https://git-scm.com/docs
《Pro Git》书籍:https://git-scm.com/book/en/v2
《Pro Git》中文版:https://git-scm.com/book/zh/v2
1.5 名词解释
repository :仓库;指git上所创建的代码库。一个仓库对应一个项目。
branches :分支;一个 repository 可以存在多个分支。
2. 文件状态与工作区域
git的文件状态是其git核心内容,了解后对后续的操作有莫大的帮助,不同的文件状态又存储在不同的工作区域中。
下面简单的说明这两者:
2.1 文件状态
git中的文件有以下几种状态:
未跟踪(untrack):表示文件为新增加的。
已修改(modified):表示修改了文件,但还没保存到git仓库中。
已暂存(staged):表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。
已提交(committed):表示文件已保存在git仓库中。
2.2 工作区域
知道了文件状态,也需要知道不同的文件状态存储在不同的工作区域内。
按照本地计算机与远程计算机划分,工作区域有以下几种:
1)本地计算机
Working Directory(工作目录):即正在编辑的文件状态。文件状态为未跟踪(untrack)和已修改(modified)在此区域内。
Staging Area(暂存区):保存了下次将提交的文件列表信息。文件状态为已暂存(staged)在此区域内。
Repository(本地仓库):提交到本地仓库的文件。
2)远程计算机
Repository(远程仓库):已提交到远程计算机内的文件。
2.3 示例图

3. 快速使用
3.1 基本的 Git 工作流程如下
a.在工作目录中修改文件。
b.暂存文件,将文件的快照放入暂存区域。
c.提交更新,找到暂存区域的文件,将快照存储到仓库目录。
3.2 示例
下面以一个git测试项目完成一套简单的git操作为例:
1) 创建一个Git公开仓库
首先在 https://github.com/中创建一个公开仓库。
创建完成后可获得git地址:https://github.com/polk6/gitDemo.git

2) git clone:clone 项目
git clone https://github.com/polk6/gitDemo.git newProjectName
说明:表示将仓库clone到新创建的本地目录newProjectName内(此参数可忽略,如不输入将会创建一个仓库名称的目录),默认配置下远程 Git 仓库中的每一个文件的每一个版本都将被拉取下来。今后若服务器上的磁盘坏掉了,可以使用任何一个克隆下来的用户端来重建服务器上的仓库。
3) 设定身份
git config --local user.name "username"
git config --local user.email "user email"
说明:设定此仓库提交时的身份信息。
--local 表示此仓库的身份信息,除此之外还有 --global表示当前用户,--system表示所有用户。
4) 新增一个文件
echo abc>>1.txt
说明:创建了一个1.txt文件,并写入了"abc"内容。
5) git add
git add 1.txt
说明: 将1.txt文件提交到【暂存区】
6) git commit
git commit -m "增加了1.txt文件"
说明:将【暂存区】的文件提交到【本地仓库】
7) git push
git push
说明:将【本地仓库】的内容提交到【远程仓库】
git 快速入门的更多相关文章
- Git快速入门进阶篇
本文接着Git快速入门篇,继续探讨Git在管理项目中的一些应用. 远程仓库的使用 查看远程仓库 查看你已经配置的远程仓库服务器,可以运行 git remote 命令.指定选项 -v,会显示需要读写远程 ...
- git快速入门 push/clone/reset/merge/切换分支全都有
本文介绍git快速入门,从安装/创建init / 发布push/版本回退reset / branch分支切换/合并分支merge 这些基本的操作都有涉及,方便新人快速入手,有需要的朋友mark一下.首 ...
- Git 快速入门--Git 基础
Git 快速入门 Git 基础 那么,简单地说,Git 究竟是怎样的一个系统呢? 请注意接下来的内容非常重要,若你理解了 Git 的思想和基本工作原理,用起来就会知其所以然,游刃有余. 在开始学习 G ...
- Git快速入门和常用命令
一.快速入门 本地初始化一个项目 首先,你需要执行下面两条命令,作为 git 的基础配置,作用是告诉 git 你是谁,你输入的信息将出现在你创建的提交中. git config --global us ...
- git 快速入门及常用命令
身为技术人员,都知道Git是干嘛的.从服务端角度它是代码仓库,可以多人协作.版本控制.高效处理大型或小型项目所有内容:从客户端讲,它能够方便管理本地分支.且与服务端代码的同步,从拉取.合并.提交等等管 ...
- Git快速入门
如果你不想看长篇的Git教程,想快速了解Git的使用,那么本文可能会对你入门Git有所帮助.由于笔者用的是Windows系统,所以本文只写Git在Windows上的使用. 一.Git安装 去Git官网 ...
- git 快速入门(二)
一.引子 git代码托管的优秀工具之一, 其工作原理和svn截然不同.一旦拥有主干master分支权限, 只要在本地拉取主干分支, 可以随时随地切换分支. 它拥有众多优点,eg :支持在断网的情况下, ...
- git快速入门(MAC系统,github,ssh key)
如果使用过svn的话,git大致可以认为是多了本地库的svn.git先本地提交commit到本地库,然后再push到远程服务器的库.git是分布式的代码管理工具,基于SSH协议.ssh的作用就是为了不 ...
- 版本管理·玩转git(快速入门git)
如果你用过Word文档写过文章,那么你一定会有这样的经历. 我觉得某一段或者某一句写得不够好,但是,删掉之后我可能会后悔把它删掉了,进而又想把删掉的段落找回来,这时,你想到了一个好办法,将每次的修改都 ...
随机推荐
- Maven构建项目比较慢的解决办法
[前言] Intellij IDEA下Maven构建项目时,构建项目速度比较慢.需要等好久才能构建好一个项目,有时候一下午也还在提示进度. [问题描述] 使用Maven构建项目时: 设置好各种参数,然 ...
- windows错误处理
在调用windows API时函数会首先对我们传入的参数进行校验,然后执行,如果出现什么情况导致函数执行出错,有的函数可以通过返回值来判断函数是否出错,比如对于返回句柄的函数如果返回NULL 或者IN ...
- 做了一个web版的 MyBatis Generator
mybatis 官方提供了 MyBatis Generator ,可以通过 xml 配置文件的方式使用,例如自己写调用脚本,或者使用 mvn 插件的方式,其实实现起来还是很简单的.虽然简单,但还是不够 ...
- 【Docker】安装Docker及基本使用
该文以CentOS系统为例,介绍Docker安装及基本使用.为了简化安装流程,Docker 官方提供了一套安装脚本,CentOS 系统上可以使用这套脚本安装: curl -sSL https://ge ...
- JAVA中的 static使用
主要内容: 1.静态变量 2.静态方法 3.静态代码块 静态变量 我们知道,可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立.然而在某些时候,我们更希望该类所有的对象共享同一个成员 ...
- python2.7源码编译安装
最近学习docker容器,因为平时用的linux发型版都是centos6系列,所有pull了一个centos:6.6的景像,运行景像,进入容器后,发现其默认的python环境是2.6,为了更好的兼容我 ...
- 常见的VPS虚拟化架构:OpenVZ、Xen、Hyper-V、KVM、VMWare OpenVZ
OpenVZ OpenVZ特点是,它是直接调用母服务器的内核,所以会导致部分软件无法使用,以及部分内核文件是无法修改. OpenVZ适用人群:新手.低预算客户 OpenVZ注意事项:资源不是自己独有的 ...
- C#并发编程实例讲解-概述(01)
在工作中经常遇到需要并发编程的实例,一直没有时间来整理,现在空了下来,个人整理对并发一下理解. 关于并发编程的几个误解 误解一:并发编程就是多线程 实际上多线只是并发编程的一中形式,在C#中还有很多更 ...
- spring 多线程 写入数据库 和 写入 xml文件
最近工作中遇到一个需求 多线程先爬取页面 然后将爬取的结果持久化到数据库中 ,一些大文本的内容需要持久化到 xml文件中; 下面是运行后的结果: xml 文件写入结果: 数据库写入结果: 再来张项目结 ...
- Friday for Oldboy
计算机的硬件介绍 1. CPU的工作流程:取指令->解码->执行 . 程序状态字寄存器(Program Status Word,PSW)中有一个二进制位控制这两种模式. 内核态:当cp ...