码迷,mamicode.com
首页 > 其他好文 > 详细

<细致>git是什么以及git的简单上手入门

时间:2020-01-26 14:37:11      阅读:69      评论:0      收藏:0      [点我收藏+]

标签:zed   行修改   输入   修改   简单   告诉   pwd   说明   本地   

1.git是什么?

git是目前世界上最先进的分布式版本控制系统。

2. git从何而来

  众所周知,1991年linus编写并开源了Linux操作系统,一直到2002年,linux的前进发展都是世界各地的志愿者把源代码文件通过diff的方式发给linus,然后linus本人通过手工方式合并代码。

  到了2002年linux社区采用了一个商业的分布式版本控制系统BitKeeper,BitKeeper给了linux社区免费使用权,linux社区中一些人试图破解BitKeeper的协议,2005年开发samba的andrew的"逾约"行为被BitKeeper公司发现了,BK公司要求收回linux社区免费使用权,哼老子免费给你用你还干这么不要脸的事老子不干了。此时linus没有向BK公司道歉,花了两周时间自己用c写了一个分布式版本控制系统,也就是Git。过了一个月,linux系统的源码就已经由git来管理了。

  此后git迅速风靡世界,2008年github上线,为开源项目免费提供git存储,无数开源项目开始移到Github,包括jQuery,PHP,Ruby等等。

3.集中式版本管理系统 vs 分布式版本管理系统

https://www.liaoxuefeng.com/wiki/896043488029600/896202780297248

4.安装Git

在linux上安装Git

$sudo apt-get install git

 在windows上安装Git

从Git官网下载安装程序进行安装,安装成功后需要进行初始化设置,因为git是分布式版本控制系统,每个机器都必须自报家门:你的名字和email地址。

$git config --global user.name "xxxxx"
$git config --global user.email "xxxxxxxxx"

在MacOS上安装Git

Xcode集成了Git,直接用Xcode的命令行就行。

 5.版本库(仓库)创建与文件添加

即repository的创建,repository里的所有文件都可以被git管理起来,每个文件的修改删除Git都能跟踪以便任何时刻都能追踪历史或者在将来某个时刻"还原"。

第一步,创建一个本地目录,如果已经有了可以忽略这一步。

$ mkdir git_test
$ cd git_test
$ pwd
/Users/Dynmi/git_test

ok,这个repository位于笔记本的 /Users/Dynmi/git_test

第二步,通过git init命令把这个本地目录变成git可以管理的repository。

$ git init
Initialized empty Git repository in /Users/Dynmi/git_test/.git/

.git目录是git用来跟踪管理这个repository的。

6.把文件添加到repository

这里我们编写一个readme.txt文件,内容如下:

Linus,who developed git,is a great developer.
I admire him.

首先把readme.txt文件,也就是我们要添加的文件放到repository中也就是/git_test目录下,然后告诉git,我们做了把文件添加到repository的操作。

$ git add readme.txt
$ git commit -m "wrote a readme file"

git add命令,后面输入的是添加的文件名,可以一次提交一个文件,也可以多个,如

$ git add file1.txt file2.txt

git commit命令,-m后面输入的是本次提交的说明。

至此,git入门成功。学到三个helloworld级别的命令,分别是

git init

git add <file>     所有文件无论是第一次添加还是后期修改,都要在操作完后使用git add入库

git commit -m <message>  提交做的修改操作

7.管理修改,撤销修改,删除文件

提交文件添加后如果再行修改这个文件,修改后需要提交更改,具体操作如下:(承接上文readme.txt)

$ git add readme.txt
$ git status

On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: readme.txt

no changes added to commit (use "git add" and/or "git commit -a")

$ git commit -m "readme.txt modified"

[master 5e92616] readme.txt modified.
1 file changed, 1 deletion(-)

$ git status

On branch master
nothing to commit, working tree clean

使用git status命令可以查看目前待提交的添加修改操作,上文我们做了git add命令之后如果git status可见git add命令后尚未提交的修改。

对于所有做过的commit提交,可以通过git log命令查看。

 

下图是一个全面的git命令总结 技术图片

<细致>git是什么以及git的简单上手入门

标签:zed   行修改   输入   修改   简单   告诉   pwd   说明   本地   

原文地址:https://www.cnblogs.com/dynmi/p/12233975.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!