Git
Git?
Git是一种分布式版本控制系统, 集中式版本控制系统有SVN, CVS
说到Git的起源, 就不得不说起 Linus Torvalds 这个 Linux系统之父
这之间的际遇, 可以扯一大篇, 这里就不做赘述了
可以说, Git的诞生是被逼出来的, 啊哈哈, Linus只花了两周时间就用C把Git写出来了
Github
Github是一个基于git的代码托管平台, 它为开源项目免费提供git存储( 付费可以拥有私密存储 )
也就是 git 负责在本地客户端的管理存储工作, 而 github 则是由本地的 git 存储仓库 commit 到线上的管理
上传与代码版本迭代
在本地安装了git后, 可以先本地配置用户名和邮箱, 指令为:
git config --global user.name "用户名"
git config --global user.email "自己的邮箱"
使用 git bash 在所需要管理的文件的根目录下初始化 git存储仓库, 指令为:
git init
之后便可以查看本地文件夹内文件状态:
git status
并可以设置跟踪文件(子文件夹)变化:
git add <fileName>
也可以全部添加, 指令为:
git add -A
添加完毕后, 可以提交到本地存储:
git commit -m "补充信息说明"
接着将本地 git 与 github 关联
具体可以参考园内 ID:Schaepher 写的关于git与github的教程说明: http://www.cnblogs.com/schaepher/p/5561193.html
写的非常详尽
关联后再次修改文件, 并提交
git commit -m "message"
再使用 git log 查看信息 发现并没有修改后的上传记录, 并有提示:
Changes not staged for commit:
no changes added to commit
当然, 此时的 git push 也不会往 github 上推送修改好的内容
WHAT HAPPENED??
其实是忽略了一个很简单的地方
在修改文件后, git status 会显示修改被的文件
如:
而此时, 必须要重新 git add 这些文件
以图为例: git add ./src
追踪 src目录下的所有文件, 就能有效提交修改的文件到本地仓储
git commit -m "message"
多次提交后, 可以查看每次提交的信息:
git log
而关于版本变化的 git reset 操作, 就是根据 commit 后的hash值操作的
这里就不为大家详细介绍了
顺利提交后, 就能更新同步存储在githu上的代码了(PS: 第一次上传的时候, 应该执行: git remote add origin + 管理github仓储的SSH, 并且可能需要先认证: git pull -u origin master):
git push
Github上的变化
同步后, github上的代码当然会有变化
在repo内有提示更改过的地方:
并会有详细修改前后对比:
所以各位工作的小伙伴们别开小差哈, 工作量多少, 一上传就能看得到, 哈哈哈