Git初学总结,希望同样是小白的你能少走弯路。
Git与GitHub:
Git是一个分布式管理系统。懒得去讲和SVN的区别了。对我来说就是一个工具,比SVN好用。
被保存在Git本地仓库的内容可以随时被找回。这对老是手贱删除代码的我简直就是天大的福音。
而GitHub则是一个网站,免费提供了一个空间来备份本地仓库的内容,当你的本地仓库和远程仓库(Github上自己创建),这样的话,即使电脑挂掉了也能找回之前的代码。
不理解本地仓库和远程仓库没关系,先把前置只需要做一次的工作先做了。然后看教程,就很舒服了。
这里推荐一个很好的教程,我老班推荐的。很不错哦:廖雪峰的Git教程。
那个别急着点链接哈。先听我讲讲心得。
Git安装:
官网下载安装包:Git官网链接 然后像装QQ一样,选好文件夹随便装。
(不要怕,刚开始我也怕,因为我一直深信有些软件只能装系统盘,后来才发现童话里都是骗人的)
安装完成后,在开始菜单输入Git,能看到Git Bash就OK了。
GitHub账号申请:
有一个远程仓库当然只有本地仓库要保险。当然,自己有服务器的话也可以搭建一个Git远程库。
做法请参照: 自定义Git服务器搭建。
Github的话可以免费申请,但是记住这是开源的。也就是说,你的代码是公开的。
GitHub官网链接: GitHub官网链接。
注意,邮箱和用户名记住。创建版本库和链接远程库的时候要用。
本地仓库创建:
软件装好,账号申请,前置工作做完。
可以创建本地仓库了。我来说说自己对本地仓库的理解。
就是一个普通的文件夹,不普通的地方在于,在执行初始化命令后里面多了一个.git的隐藏目录。
可以看见的文件夹称为工作区,放置项目,代码。
隐藏的目录包含暂存区和版本库,两个新概念,暂时只要知道工作区和版本库同步要两部。
git add <filename> 把文件添加到暂存区 //<filename>指的就是filename
git commit -m "say something" 把文件放到版本库。
""里面是提交时的说明(最好写,方面自己以后了解改动)。可以写中文。
版本库创建的操作步骤:
选择一个自己看的顺眼的地方新建一个文件夹,雪峰同志的教程搞得我以为只能在安装目录新建。
目录名最好英文。人家当时开发时没考虑中文,有可能会出错。有可能是最可怕的。
创建好文件夹后进入,鼠标右击选择 Git Bash Here
输入命令: pwd
查看当前路径是否正确,100%都是正确的。求个心安,哈哈。
输入命令:
$ git init //意思是初始化文件夹。
这时候,本地版本库就完成了。
你的文件夹里就已经添加 .git 目录了。 //因为是隐藏的,所以看不到。
只要是在这个文件夹下的代码都可以用Git进行管理了。
使用 git add 命令将想要快照的内容写入缓存区, 而执行 git commit 将缓存区内容添加到仓库中。
Git 为你的每一个提交都记录你的名字与电子邮箱地址,所以第一步需要配置用户名和邮箱地址。
所以别急着退出 Git Bash 输入下面的命令:
$ git config --global user.name 'yourname'
$ git config --global user.email [email protected]
//记住把用户名和邮箱换成自己的
说几个常用的命令:
$ git add <filename> 向暂存区添加文件,可以多次 git add 在暂存区添加好多文件
$ git commit -m "say something" 把暂存区的所有文件提交到版本库。
$ git status 查看是版本库当前状态,看看有没有提交成功。
$ git diff 详细查看上一次更新改动了哪些内容。
$ git log 查看命令日志,英文状态下输入 Q (大小写无所谓) 即可退出。
接下来能做的就是提交,删除,版本恢复等的操作了。
看教程慢慢来,多做几遍就记住了。
雪峰同志的 git checkout -- <filename> 的命令讲的我有点晕,其实这个命令就是将版本库的文件覆盖工作区的。
即令 .git 目录中的文件覆盖文件夹中的。
连接远程库
有两种连接方式,http和ssh.
区别在于ssh快。记得把公钥添加到Github中
这边很少遇到问题。
真的遇到了,也都是很好解决的,把报错内容百度一下。
同步本地仓库和远程库
如果你的远程版本库是空的,那么直接 push 没得问题。
但是你的远程版本库不是空的,你需要先 pull 一下。
pull 的时候要小心。会和并远程版本库和本地仓库不一致的地方,需要手工修改。
改错了没有关系。版本回退即可。
那么本地版本库就还是原先的内容,只要 git checkout -- <filename> 即可。
OK,今天的总结到此结束。
最后了,省的小伙伴往回翻: 廖雪峰 Git 教程