Git是什么?
Git 是用于 Linux内核开发的版本控制工具。版本控制工具就是用于记录开发过程的每个版本
GitHub是什么?
它是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,所以叫GitHub。
我们可以从使用GitHub的方式去了解如何使用Git。
- 先去GitHub注册一个账号
image - 注册后进入这个页面,我们来新建一个仓库
image - 点击后,输入库名,设置为公有(私有收费),勾选一下初始化生成一个READMA文件(自愿,勾不勾都可以,初次使用最好勾选)
image - 创建库后,在页面中寻找clone or download,点击后使用Use SSH,复制它提供的链接
image - 打开终端,输入git clone (你复制的地址),回车,它的意思就是你创建的下载提示到你的电脑里
- 当你在执行这句话的时候,第一次操作它会有个报错,试着阅读一下,提示你需要设置一个公钥,这是因为github需要知道你是否有权限去下载,不可能无论是谁都可以下载吧
-
在GitHub页面上的右上角有一个头像,点击它,点击Settings,找到SSH and GPG keys,去使用一下它的帮助,image
点击后寻找Generating a new SSH key and adding it to the ssh-agent,
image
复制这一行代码,把它输入终端后,一直按回车(注意:改成你的邮箱)
image
此时它会在你的文件夹下生成一个私钥id_rsa和一个公钥id_rsa.pub,接下来我们需要把id_rsa.pub的内容拷贝下来,你可以使用vim编辑器去拷贝也可以输入cat id_rsa.pub,去用鼠标拷贝(注意:要完整的复制,不要少)
image -
打开GitHub页面,点击New SSH keys,在title下输入名称(什么都行),在key下粘贴,点击添加
image - 点击Use SSH,复制它提供的链接, 打开终端,输入git clone (你复制的地址),进行下载,进入你下载的文件夹(文件夹名应该就是你新建的库名),在里面创建一个文件,添加到缓存区,提交到本地库,推送到github远程库,此时你的github网页库里会出现你在终端创建的文件
cd blog /blog是你的文件夹名,意思是进入blog文件夹
touch a.md /创建文件a.md
echo"hello" > a.md /向文件里写入字符串
git status /可以列出当前目录所有还没有被git管理的文件和被git管理且被修改但还未提交的文件.
git add . /添加到缓存区
git commit -am "addfile" /把暂存区的更新提交到本地库,“”中内容是描述一下你做了什么
git push origin master /推送到github远程库
就是通过这样的过程,你就可以将自己电脑中的项目,通过终端推送到GitHub上
当你第一次提交到远程库时可能会出现让你设置你的邮箱和密码,输入后会弹出一个githu的登陆页面,登陆进去就可以啦
- 下面是一些基本的操作,可以自己尝试一下
git pull /使用前最好变动更新一下本地库
如果想要在本地新建一个项目然后推送到远程github上
mkdir blogtest /创建一个空的blogtest文件夹
touch blogtest.md /添加一个文件
git init /用它来初始化,把空文件夹变成仓库
git remote -v /查看本地仓库里记录的远程仓库地址
git remote add origin 地址
git push origin master
分支操作
git branch -a /查看分支
git branch dev /创建本地库dev分支
git checkout dev /切换到dev分支
git push origin dev /推送到origin地址的dev分支上
git checkout master /切换到master
git merge dev /把dev分支上的内容合并到当前主干(master)上
- 冲突
当自己和别人改同一个文件的同一个地方,在执行git pull时更新本地合并时会出现冲突
1.修复冲突文件
2.重新提交