Git基本概念与命令使用

Git基本概念与命令使用

Git基本概念

	Git是什么?

	Git是目前世界上最先进的分布式版本控制系统(没有之一)。

	Git有什么特点?简单来说就是:高端大气上档次!

	那什么是版本控制系统?

如果你用Microsoft Word写过长篇大论,那你一定有这样的经历:

~

想删除一个段落,又怕将来想恢复找不回来怎么办?

Git:分布式版本控制系统
这样,你就结束了手动管理多个“版本”的史前时代,进入到版本控制的20世纪。

安装

  • 在Mac OS X上安装Git
    如果你正在使用Mac做开发,有两种安装Git的方法。
  • 一是安装homebrew,然后通过homebrew安装Git,具体方法请参考homebrew的文档:http://brew.sh/
  • 第二种方法更简单,也是推荐的方法,就是直接从AppStore安装Xcode,Xcode集成了Git,不过默认没有安装,你需要运行Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就可以完成安装了。

Xcode是Apple官方IDE,功能非常强大,是开发Mac和iOS App的必选装备,而且是免费的!

安装完成后,还需要最后一步设置,在命令行输入:
  • $ git config --list测试一下是否安装成功
  • 创建版本库

      $ mkdir learngit
      $ cd learngit
      $ pwd
    

    通过git init命令把这个目录变成Git可以管理的仓库:

      $ git init
      
      编写一个readme.txt文件
      $ touch readme.txt
    

    用命令git add告诉Git,把文件添加到缓存区:

      $ git add readme.txt
    

    用命令git commit告诉Git,把文件提交到仓库:

      $ git commit -m "wrote a readme file"
    
  • 本地git init之后至少需要一次commit后才能看到分支,因为git的分支必须指向一个commit,没有任何commit就没有任何分支。


    查看分支:$ git branch

    版本控制系统肯定有某个命令可以告诉我们历史记录,
    在Git中,我们用git log命令查看:

  • 版本回退
    在Git中,用HEAD表示当前版本

  • 上一个版本就是HEAD^

    上上一个版本就是HEAD^^,

    当然往上100个版本写100个 ^ 比较容易数不过来,所以写成HEAD~100。

现在,我们要把当前版本回退到上一个版本,就可以使用git reset命令:

		$ git reset --hard HEAD^
  • 工作区和暂存区

      Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。
    
    • 版本库(Repository)
      工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。

      Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。

    再创建一个文件LICENSE
    现在,使用两次命令git add,把readme.txt和LICENSE都添加后,用git status再查看一下
    现在,暂存区的状态就变成这样了:

      git add命令实际上就是把要提交的所有修改放到暂存区(Stage),然后,执行git commit就可以一次性把暂存区的所有修改提交到分支。
    

一旦提交后,如果你又没有对工作区做任何修改,那么工作区就是“干净”的:

  $ git status
	On branch master
	nothing to commit, working tree clean

现在版本库变成了这样,暂存区就没有任何内容了

  • 创建标签

在Git中打标签非常简单,首先,切换到需要打标签的分支上:

$ git branch
$ git tag v1.0

可以用命令git tag查看所有标签:

$ git tag

默认标签是打在最新提交的commit上的。

注意:标签总是和某个commit挂钩。如果这个commit既出现在master分支,又出现在dev分支,那么在这两个分支上都可以看到这个标签。

如果标签打错了,也可以删除:

$ git tag -d v0.1

因为创建的标签都只存储在本地,不会自动推送到远程。所以,打错的标签可以在本地安全删除。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值