初识Git(一)

来源:互联网 发布:java一定要去培训班吗 编辑:程序博客网 时间:2024/05/16 02:53

Git

1.是什么?能做什么?

    Git是开源的分布式的版本控制系统;采用了分布式版本库的方式,不必服务器端软件支持,用于敏捷高效地处理任何或小或大的项目。

(注:之后会有关于版本控制系统 集中式分布式的区别和典型例子)

2.Git的发展

2002年,Linus选择了一个商业的版本控制系统BitKeeper;

2005年,Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git。

2008年,GitHub网站上线了,它为开源项目免费提供Git存储,无数开源项目开始迁移至GitHub,包括jQuery,PHP,Ruby等等。

3.集中式与分布式

版本管理:版本管理就是管理更新的历史记录

集中型:集中型将所有的数据集中存放在服务器中,便于管理。但是一旦无法连接服务器,就会无法获取最新的源代码。 
分散型:GitHub将仓库fork给每一个用户。Fork就是将GitHub的某个特定仓库复制到自己的账户下。开发者不必远程连接就可以进行开发。


git每个历史版本都存储完整的历史文件,而SVN则只存储每个版本的差异。

4.Git的安装与配置

 安装包下载地址:http://msysgit.github.io/

     下载后,找到git Bash,跳出来一个类似命令窗口,说明安装成功

     

      配置:

     (1)注册账号及创建 :github

     (2)username和email

         $git config --global user.name"Your Name"

$git config --global user.email "email@example.com"

(Git config命令的--global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置

(3)在本地创建SSH KEY,成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key,回到github,进入Account Settings,左边选择SSH Keys,粘贴key

命令如下:$ ssh-keygen-t rsa -C"your_email@youremail.com"

         验证是否成功: $ssh -T git@github.com输入yes

成功则显示 You've successfully authenticated, but GitHub does not provide shell access 。

5.工作流程

(1)克隆git资源作为工作目录

(2)在克隆的资源上修改或添加文件

(3)如果有其他人修改了,你可以更新资源

(4)提交前查看修改

(5)提交修改

(6)如果修改有错误,可以撤回提交,在修改后再次提交

此处可以参考http://www.runoob.com/git/git-workflow.html,里面有详细的工作流程图

此外,你还需要了解提交的流程:

6.创建版本库

        版本库也叫仓库,可以将它理解成一个目录。git可以对该目录下的所有文件进行管理,并对每个文件的变更进行追踪。

         6.1 

      在想要的路径下,右键git Bash。输入命令git init。该命令使这个目录变成git可以管理的仓库。成功后会多一个.git文件

        

       cd命令用于切换当前工作目录,mkdir用于创建一个目录,pwd命令用于显示当前路径

         6.2将文件添加到版本库

           6.2.1在该版本库下新建一个文件1.txt,使用命令git add 1.txt 将文本添加到暂存区中

            

             如上,表示添加成功。

             命令rm 1.txt表示删除文件,然后commit。如果没有commit都可以恢复删除  git checkout -- 2.txt

           6.2.2使用git commit -m “添加文本文件”  告诉git将文件提交到仓库

             

           6.2.3使用git status查看是否还有文件没有提交

             

             说明没有文件未提交

           6.2.4修改1.txt内容,使用git status

              

             表示1.txt已经修改,但是未提交修改

             若要查看修改了什么内容,使用git diff 1.txt

            

            6.2.5重复添加步骤,提交并查看状态

            6.2.6撤销修改

  方式一:直接修改文件,重新add

  方式二:直接恢复上一个版本

  方式三:使用chenckout --1.txt丢弃工作区的修改 

              

7.版本回退

     7.1使用git log命令查询历史记录

     7.2使用git reset --head HEAD^ 回退上一版本,$ git reset --hard HEAD^^回退上上版本

         

         $ git reset --hard HEAD~100 回退上100 个版本

     7.3使用cat 命令查询内容

       

     7.4使用reflog查询版本号

       

     7.5使用git reset --hard 版本号 回复相应的版本

       


    




     

原创粉丝点击