推荐一个学习的地址给大家:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
1、认识一下Git
Git是一个分布式版本控制系统,那么它和集中式版本控制系统(CVS、SVN等)有什么区别呢?
集中式:版本库集中存放在中心服务器,必须联网才能工作
分布式:没有中央服务器(实际上是有一个中央服务器的,只是用来交换修改的代码),每个客户机都是完整的版本库。安全性更高,因为每个人都是独立的。
2、Git安装
我是基于Windows学习的,安装文件可以在前面的学习URL中找到。
安装完之后还需要进行一个配置工作(Git Bash下):
git config --global user.name "用户名"
git config --global user.email "自己的邮箱"
3、Git使用
在没有远程仓库的情况下,我们可以在自己的电脑上创建一个版本库,这个过程很简单:
1、选择一个已有的目录或者在Git Bash下通过命令:mkdir 目录名创建一个自己想要的目录;
2、cd到我们计划的目录,使用命令:git init,这样这个目录就变成了Git可以管理的仓库,验证操作是否成功:ls -ah可以看到一个隐藏的文件.git
下面列举一下Git使用过程中常用的命令:
git add:当版本库中新增一个文件,我们需要执行该命令,基于工作区把文件提交到Git的暂存区stage
git commit -m "备注":提交文件到版本库
git status:时刻查看仓库当前的状态
git diff:查看具体改动的内容
git reset --hard HEAD^:回退到上一个版本
撤销改动:
git checkout --reset (工作区的修改还没有执行git add)
git reset HEAD file(工作区的修改已经git add)
删除仓库中的文件:git rm file
4、远程仓库(GitHub)
既然说Git是一个分布式版本控制系统,那么它是如何实现分布的呢?通过一个远程仓库,然后分不到不同的机器上,并且每一个机器都是一个独立的版本库。
本地仓库和GitHub仓库传输通过SSH加密,需要设置:
ssh-keygen -t rsa -C "前面设置的邮箱"
那么本地仓库如何关联远程仓库呢?
git remote add origin 远程仓库地址
把本地的内容推送到远程仓库:git push -u origin master(第一次,后面可以直接使用git push)
从远程仓库克隆到本地:git clone 远程仓库地址xxx.git
获取远程仓库最新的内容并合并到本地仓库:git pull