1. 基本结构
我们不去研究Github的原理与机制,仅仅研究Github对于用户使用而言所需要知道的一些知识和操作。
Github的总体结构可以分三个区域, 工作区、暂存区和当前分支:
(1)工作区,就是我们想要上传做共享的目录,换言之用户当前活动的的作用域;
(2)暂存区,当用户完成操作想要保存改动时,将当前工作区进行保存,保存的区域就是暂存区;
(3)当前分支,即Github在服务器端的当前时间线;
2. 基本流程
Github基本结构三者之间的关系举个例子来说,就是用户是一个跨越多重时间线的创世神,创世神的工作是创建一个完美世界,但是完美世界的定义有很多种,所以创世神决定实现每一种完美定义下的世界,因此,他在不同的时间线上同时开始创作多个世界,这就对应着Github上的分支,但是创世神是单核的,一次只能处理一个时间线,每次正在进行创世的时间线对应Github上的当前分支;当创世神完成了一项创作任务之后,就将改动用“git add”保存到暂存区,当他完成了一整天的创作任务之后,用“git commit”将今天暂存区的所有改动释放额当前分支上,这样所有改动就在Github上生效了。
3. 基本操作
这是一篇读完你就能简单使用GIthub的博客,所以一些高深的操作我并不会说,因为我也不会,更严格地说,也许会过。
-
**(1)**push到一个仓库
a. 在github上创建一个repository,得到reposity_name & reposity_address,例如reposity_name=origin,reposity_address=https://github.com/xxx-gh/regain.git;
b. 在本地目标目录进行gitinit,得到本地repository;
c. git remote add reposity_name reposity_address,将远程的仓库和本地仓库链接起来,换句话说,改动保存在哪个仓库的哪个分支下;
d. git add --all,添加工作区所有改动到暂存区;
e. git commit -m “specifications”,添加暂存区所有改动到当前分支;
f. git push -u origin master (第一次使用时要加上-u,后来就不用了),其中origin为仓库名,master为当前分支名,将当前分支的所有改动推送到远程仓库的当前分支上;
g. 刷新你的仓库,改动出现。 -
(2) clone一个仓库到本地
a. 在Github网页上选择你所要用的reposity_name,并选择你想要的分支,此时右边有个下载的符号,点击之后出现reposity_address,复制;
b. 打开终端,cd到你想存放这个仓库的位置,输入 git clone reposity_address,回车。
3. 其他操作
这里有一些操作,感兴趣的可以尝试。
git staus;
git branch xxx;
git checkout xxx;
git branch xxx;
git rm aaa.txt;
git stash;
git tag;
git merge;
git ignore;