Git基本使用教程01

一:Git是什么?

Git诞生于2005年的Linux开源社区。Git是一款免费、开源的分布式版本控制系统,版本控制有本地版本控制系统集中式版本控制系统(SVN):服务器是中心结点,每次操作都要提交到中心结点上分布式版本控制系统;这里有人会问GitHub是什么?GitHub和Git是什么关系呢?
Git和GitHub的关系:
打个比方Git就好比电脑上的Dota,而GitHub就好比11对战平台。
如果把Git比作一个本地仓库(单机),那么GitHub就是远程仓库。
Git的优势

  • 速度快
  • 设计简单
  • 分布式控制
  • 允许上千行并行分支

二:Git的入门简要使用

--这里我将演示如何克隆(下载)GitHub(远程仓库)中的文件到本地仓库中并演示如何设置公钥私钥
1:

在GitHub上新建一个仓库

2:
点击Clone or Download可以查看该仓库的地址

3:我们直接在文件夹中gitBash 然后git clone [email protected]:Lay-Buddhist/TheBlog.git会报错。其原因是因为本地电脑没用和远程GitHub设置公钥
4:
在中输入以下命令创建公钥

5:
然后一直回车直到这一步

6:
下来输入如下命令即可得到公钥或者打开家目录下的.ssh文件夹用编辑器打开id_rsa.pub然后拷贝

7:接下来进入GitHub中的Setting界面点击 SSH & GPG keys 然后点击New SSH key

8:

复制生成的公钥自行任意取个名字给该公钥然后点击AddSSHkey输入自己的GitHub密码即设置公钥成功

接下来我们就可以开始clone了!
9:在命令行中输入git clone [email protected]:Lay-Buddhist/TheBlog.git(你的仓库的SSH) TheBlog(可以新建一个名为TheBlog的文件夹)
自行新建一个TheBlog文件夹并把远程仓库clone在其中

10:
Git五大步

11:
可以看到GitHub上的仓库更新了

如果想让别人可以预览的话我们可以在Setting中设置成如下


三:Git的一些基本命令

1:git clone [email protected]:Lay-Buddhist/TheBlog.git //把后面远程仓库地址中的仓库下载到本地仓库中
2:git status //查看仓库中文件的状态
3:git add . //将文件夹下的所有文件放入暂存区
4:git commit -am "modify" //将暂存区的文件提交到本地仓库  如果提交参数包含大量字符串可以不加m
5:git push origin master //将本地仓库改动推送到远程仓库中
6:git push //同上是某仓库执行过git push origin master后
7:git pull //远程仓库发生变化 本地仓库没有发生变化,那么git pull就是更新本地仓库
#利用vim编辑器修改文件
vim a.md  // 执行该命令打开vim编辑器
i & a 然后回车 进入编辑状态
按esc进入命令命令状态
:wq 是保存退出
:!q是不保存 强制退出

三个小问题

###1:git pull 和 git clone url有什么区别?
git clone 说白了就是将整个git项目拷贝下来,包含了里边的日志信息,项目里的Branch分支,
你也可以切换或直接使用里边的分支。
git pull相当于git fetch和git merge。其意思是先从远程下载git项目里的文件,然后将文件与本地的分支进行merge。
或者可以这么理解:
clone是本地没有resposity时将远程的整个resposity下载下来
pull就是相当于 git merge和git fetch。本地有resposity,将远程中新的commit数据(如果有的话)下载过来并且
和本地代码merge。
###2:本地仓库和远程仓库有什么区别?
举个例子。一个项目,大家一块开发。远程仓库里边就保存着大家共同的代码。比方说我就可以下载远程仓库到自己本机。
进行修改然后push到远程仓库。或者说远程仓库更新后我就可以pull下我的本地仓库。
远程仓库就好比一个线上的互联网服务器,我们的pc机就相当于一个本地仓库。
###3:origin代表什么?
origin保存着我们的仓库地址 。学过js的人可以这么理解 远程的仓库url一大段我们用起来很不方便,那么我们可以创建
一个变量保存该url。这个origin就是保存url的变量。所以origin我们也可以设置成abc等随意设置。默认是origin。
例如:git remote add abc(origin) [email protected]:Lay-Buddhist/TheBlog.git//添加远程仓库的关联
我们这里也说了origin就好比一个变量那么竟然是变量我们就可以修改变量的值。
比方说我们可以修改origin保存的(远程仓库的关联)
git remote set-url origin 

四:Git Git bash Git shell的区别

git :版本控制工具,支持该工具的网站有Github、BitBucket、Gitorious、国内的osChina仓库、csdn仓库等等。

shell:是linux、unix系统的外壳,也可以理解为命令行,就是你输入并执行命令的地方,git通过命令行和图形界面两种方式使用shell。

bash:是shell的一种,最常用的shell之一。

git Bash:方便你在windows下使用git命令的模拟终端(windows自带的cmd功能太弱)linux、unix可以直接使用git。

git shell:它是安装了git的shell,bash是一种shell。

你可能感兴趣的:(Git基本使用教程01)