Git简介
相对于集中式的管理方式,每个人都可以从中心(master)版本库中克隆(pull)到本地,拷贝一个完成的Git仓库,以多分支的形式进行各种合作开发。Git相当于一个版本控制器,记录的是修改记录。
使用前需要进行Git配置:
git config --global user.name "YourName"
git config --global user.email "YourEmail"
需要密钥绑定本地和远程服务器,即配置好SSH Key,见另一篇Git初体验
创建仓库
Git仓库是存放数据修改的地方,可以对数据进行修改、还原等操作。
有两种方法获取Git仓库,一个是在Github网站手动建立仓库文件,再从服务器拉取(pull)一个Git仓库;另一个是从本地文件自己创建。
本地创建Git仓库,到目标路径。
git init #本地初始化新Git仓库
提示信息:在当前目录下,创建了一个.git子目录,不可见的,需要找到文件资源管理项,打开“显示不可见文件”,这个文件夹下就是Git仓库,推送(push)到远程服务器即可。
git clone <url> #从远程服务器克隆Git仓库
远程仓库
与远端仓库进行交互,首先要生成一个SSH密钥,默认在主目录下的~/.ssh目录。
用下面的指令
ssh -keygen -t rsa -C "YourEmail"
添加远端仓库
在远端创建一个仓库后,需要将本地的Git仓库提交上去,创建方法为:
cd/path/to/my/repo
git remote add origin [url] #origin url
git push -u origin --all #pushes up the repo and its refs for the first time
git push origin --tags #pushes up any tags
添加提交文件
在Git仓库目录下,手动创建了程序文件后,需要添加到本地Git仓库中:
git add FileName.FileType
此处的add只是把文件操作的记录添加到事件队列(相当于内存)中,需要提交事件(相当于把数据从内存存储到本地磁盘)。
git commit -m "add file"
一般情况,会对很多文件进行修改操作,一个add只能添加一个文件,这个时候,可以一次性的添加全部文件。
git add.
## 或者
git add *
合并更新
一般情况,多人协作的时候,A会把本地修改推送(push)到远端服务器,B要进行修改的话,可以先拉取最新代码,在合并到本地分支:
git pull origin nest:master
如果远程分支与当前分支合并,则冒号后边的部分可以省略。
pull
的含义是先拉取在更新,再与分支进行合并,是个自动的过程,也可以手动实现。
git fetch origin #拉取更新
git merge origin/next #合并更新
有时候需要将本地分析和远程分支,建立连接,在git clone
的时候,本地分支默认与远程同名分支同步。
git branch --set-upstream master origin/next
如果当前分支和远程分支存在追踪关系,git pull
就可以省略远程分支名。
git pull origin
文件还原和暂存
对于已经修改的文件,想要放弃当前的修改,还原为之前的状态:
git checkout <filename>
如果不想放弃当前的修改,只想暂存起来,先处理别的事情,之后会继续操作:
git stash
# 处理事情
git stash pop
pop
相当于从堆栈中去除最后一次stash
操作
最后
基本以上的内容就够练习一段时间了,这些东西学会以后,基本可以自己看懂另外两篇git笔记了。
最后的最后
- 使用github去前需要本地安装一个Git版本控制器
- 下载一个Github Desktop,会用这个软件,基本不用学上边的代码。