首先声明
我也是刚学,看看图一乐就行,真信了我可不负责!
记得看完给作者点点举报
git介绍
不少计算机系的学弟学妹们刚接触编程不久,肯定会问:“寄唉踢是嘛玩意?” ,这里我就要纠正一点,人家不念“寄唉踢”(正确发音我打不出来了你们自己搜一下)。然后不少学弟学妹可能回去搜百度百科,链接刚打开看到成篇大论就头大,不过没有关系,自己不想看百度,我帮你复制:
Git — The stupid content tracker, 傻瓜内容跟踪器。Linus Torvalds 是这样给我们介绍 Git 的。
Git 是基于 Linux内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(wingeddevil注:这得分是用什么样的服务端,使用http协议或者git协议等不太一样。并且在push和pull的时候和服务器端还是有交互的。),使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。
实际上内核开发团队决定开始开发和使用 Git 来作为内核开发的版本控制系统的时候,世界开源社群的反对声音不少,最大的理由是 Git 太艰涩难懂,从 Git 的内部工作机制来说,的确是这样。但是随着开发的深入,Git 的正常使用都由一些友好的脚本命令来执行,使 Git 变得非常好用,即使是用来管理我们自己的开发项目,Git 都是一个友好,有力的工具。现在,越来越多的著名项目采用 Git 来管理项目开发.
目前GIT已经可以在windows下使用,主要方法有二:msysgit和Cygwin。Cygwin和Linux使用方法类似,Windows版本的GIT提供了友好的GUI(图形界面),安装后很快可以上手,不在此做大篇幅介绍。
本文将以 Git 官方文档 Tutorial, core-tutorial 和 Everyday GIT 作为蓝本翻译整理,但是暂时去掉了对 Git 内部工作机制的阐述,力求简明扼要,并加入了作者使用 Git 的过程中的一些心得体会,注意事项,以及更多的例子。建议你最好通过你所使用的 Unix / Linux 发行版的安装包来安装 Git, 你可以在线浏览本文 ,也可以通过下面的命令来得到本文最新的版本库,并且通过后面的学习用 Git 作为工具参加到本文的创作中来。
看懂了吧,这篇文章到此结束!
~~ ~~
~~ ~~
开玩笑这篇文章可是我的作业,怎么能随随便便结束!
Git简单来说,就是一个开源的分布式版本控制系统,能对软件的不同版本进行高效的管理。
那又有人问了(别管谁问了):“什么是分布式”。
分布式可以简单理解成:每台电脑都是服务器,当从主仓库拉取一份代码下来后,自己的电脑就是服务器,不用担心主仓库被你各种弱智的操作破坏,你可以在拉取下来的这份代码上打滚、游泳,只要你往主仓库合并提交的时候他是干的就好。你自己写的屎山也同样可以建一个仓库共享给别人,让别人看看你是怎么拉的。
除了分布式之外,还有一个集中式,比如svn、cvs(我一个不会)都是用的集中式,集中式的版本控制系统只有一个服务器,如果你把这个服务器搞没了,那你也就和他一起没了。另外,你的所有操作,比如回滚,提交等等都需要服务器的支持。
这个分布式说完就又有人问了(还是别管谁问的):“那版本控制系统又是干嘛的啊。”
让我来举个栗子,各位上大学写毕业论文的时候应该都挺想死吧,我们的毕业论文在通过之前肯定要经过很多次修改,如果我们每次修改都将整个文章保存修改,那从《毕业论文第一版》改到《遗书》这个文档占了一个桌面。等到要交的时候,你挨个点开他们想知道哪个才是最终版,并且最终版改了什么内容,你对着电脑翻了一晚上,最后发现你也忘了,以前老师给你的修改建议也找不到了,你崩溃的跳楼,但是你跳到一半穿越回了今天早上,发现你的电脑上有一个软件可以自动记录每次修改的内容,还可以让很多人一起编辑,最后还会自动把这些修改合并起来,从18楼跳下来但是毫发无伤的你在这电脑面前乐死了。
git安装
知道了Git是干嘛的,我们就要会安装他。
Git支持 Linux/Unix、Solaris、Mac和 Windows 平台,我只说Windows,因为我没用过其他系统。
https://git-scm.com/这个网站给你们放这了,下载完无脑下一步,除了安装地址要看一下,最好不要放到C盘。安装好以后打开cmd,输入git --version
之后显示版本号,就说明已经安装成功。
git的使用
介绍完了安装完了,怎么用这玩意,听我给你编。
1
使用git的时候,我们要先明确三个概念:
工作区: 就是你电脑里能看到目录;把远程仓库的代码克隆到这里,进行增删改等CV操作
暂存区: stage或index,一般放在.git(可隐藏文件)目录下的index文件(.git/index)中,所以我们把暂存区有时候也叫做索引(index);
版本库: 工作区有一个隐藏目录,.git,这个实际上是Git的本地版本仓库。
他们三个的关系就像这样:
在版本库中标记为“index”的区域是暂存区(stage/index),标记为“master”的是master主分支代表的目录数。
当对工作区执行git add
命令时,暂存区的目录树被更新,同时工作区文件内容被写入到对象库(此时的对象库可以认为是暂存区中的对象库)中的一个新的对象中,而该对象的ID被记录在暂存区中的文件索引中。
当执行提交操作git commit
时,暂存区的目录树就被提交到版本库中的对象库(objects)中,master主分支会做相应的更新。即master指向的在暂存区提交过来的目录树。
可以简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存区的所有修改。
2
git的使用一般分为一下几个流程:
1. 克隆Git资源作为工作目录;
2. 在克隆的资源上添加或修改文件;
3. 如果其他人更改,你可以更新资源;
4. 在提交前查看修改状态;
5. 提交修改;
6. 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。
上面是工作流程图
下面是git的几个基本操作代码
git clone
:从远程仓库中拷贝项目
git push
:上传远程代码并合并
git add
:添加文件到暂存区
git commit
:提交暂存区到本地仓库。
git checkout
:切换分支
git pull
:下载远程代码并合并
[https://www.runoob.com/git/git-tutorial.html]
我把git文档放在这里,有什么没说到的大家自己看,因为我不想写了!(剩下的我也不太熟,等我再练练再写)
(大家给作者点点举报)