# 说说我理解的github,码云,git命令
1、简介(初学者)
- 今天了解到git命令,于是就开始了一番折腾,git命令是做什么用的呢?百度百科:Git(读音为/g?t/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。说的很对,但是不太容易理解,我之前也有过想了解git这个强大“武器”的想法,但是每次都卡在这里。今天学习时看到一个git的使用教程,于是便自身摸索了一遍,实践了一下下现在写点总结。
- 初识git的我,把git简单看做可以向远端服务器发送文件的命令(像给百度云,QQ群上传文件,也更像scp命令。ps:只是本人的简单理解),可以把本地(自己电脑上)文件,发送到服务器上。这里为什么说是发送文件的命令呢?因为它确实有这样的功能,这样的话更便于理解。git的强大后面学习到后再做解释。
- git说清楚后,那么就该github,码云了。github网站即便是接收本地文件的服务器了(这也是简单理解),本地上传的文件可以放在github网站存储。码云是类似于github的网站,从它的名字gitee也可以理解。有了github为什么还要码云呢?简单的说github访问较慢,码云访问较快,具体打开两个网站试试就明白了。
2、仓库
- 上面说git是文件传输命令,那么接下说说git是怎么传输文件的?传输是什么方式的?明白这些就要用到仓库的概念
- git命令要传输文件,首先要创建仓库(这里就和像百度云,qq群等,拖动上传的方式不太相同了。),而且是两个仓库,本地一个,github(或码云)上再创建一个,有了两个仓库git命令才能用于上传文件,从本地仓库<-->远端仓库。这里就看出来了,使用git要以仓库为单位。(我第一次申请github账号后让创建仓库,结果就有点懵逼,仓库是什么啊?)
- 仓库中放的就可以是我们正常使用的文件(图片,文本文件,文件夹等等)。
3、git版本管理(初识)
- 现在说到百度百科:git是分布式版本控制系统。分布式目前我也不太了解,但版本控制(管理)在今天的实践过后有了一点理解。在创建仓库后,如果仓库所在范围的任何文件有了任何变化,通过git status可以轻松的获得变化的状态,这不就是版本管理么!这个就很实用了。具体操作方式下面会说到。
4、实践git命令(ubuntu环境)
1.安装git命令
2.创建本地git仓库:git以具体目录对应创建仓库,即就是管理一个仓库相当于管理一个目录。
git init //仓库创建成功 如下图,文件中多出一个.git目录(这便是git仓库,里面东西目前看不太懂,以后回懂的,目前不太重要)
3.创建远端git仓库,访问https://github.com/ 注册登录--》start aproject--》配置仓库参数--》确定 即可完成。创建完成后,需要复制到仓库地址。从本地仓库向github仓库发送文件当然需要github仓库地址了。本人创建完成后的地址为https://github.com/tiancplusplus/SecondRepository.git 有了这个地址就可以向这个仓库发送东西了。
4.第一次使用git命令,要配置一些参数,这些只配置一次
git config --global user.email "[email protected]" //配置自己本地git邮箱,邮箱地址可以随意填,并不是哪个注册过的邮箱
git config --global user.name "xingming" //配置自己本地git名字,名字也可以随意填写。
git remote add address_github https://github.com/tiancplusplus/SecondRepository.git //将远端地址绑定成一个变量方便操作,address_github是变量名,可随意变换
5.向仓库添加文件以及备注(这里强烈建议添加备注)
git add . //把当前目录下所有文件都添加上去
git commit -m "this is a test" //添加本次操作的备注
6.把当前仓库的东西发送到远端仓库
git push -u address_github master //第一次使用要加-u。(-f是强制push,会覆盖你仓库中原本的内容)master是一个分支的意思。
发送时要输入github账号密码。上面两个红色箭头所示。因为上面的地址是http方式给出,所以每次发送都需要输入密码,有点烦。不过,到此,已经实现今天所了解的git命令了。
5、追加git说明
1.创建仓库必须在一个目录下运行git init ,运行过后当前目录便有了一个仓库.git。如果在其它目录下运行git add . git push ...等命令是不能操作此仓库的。必须在此目录或其子目录下操作。
2.在git push 时,可以不使用上诉的http地址方式,避免输入密码。另一种方式是在本地生成ssh公钥,并将公钥在github上的账户下注册。ssh的使用这里不进行说明
git remote add address_github_ssh [email protected]:tiancplusplus/SecondRepository.git
git push address_github_ssh master
3.版本管理细微体现
git status //查看仓库的文件状态,是否有被改动
git diff test.txt//如果文件test.txt被改动,查看改动了什么地方。下图修改了test.txt文件中三行
6、总结
git是一个复杂的命令,但简单讲就是用来上传文件的。只是在文件上多了一层仓库的封装,让对文件多方面的管理更方便有效。
一个参考网站:https://www.liaoxuefeng.com/wiki/896043488029600 网站有git的详解,写的很详细。
原文地址:https://www.cnblogs.com/Ccluck-tian/p/11823762.html