生命在于学习——git的强大
git的强大之处。
本篇文章是关于git的学习记录。
一、什么是git
Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是[Linus Torvalds](https://baike.baidu.com/item/Linus Torvalds/9336769)为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。民间也有流传 , 是
Linus Torvalds , 看不惯当时的一些版本控制系统收费的现状 , 自己在小黑屋里写了两周搞出来的产物
Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持
二、为什么要有git
在git出现之前 , 在一些企业中使用到的版本控制软件大都是 svn , 自从git出现以后 , 就取代了svn的位置 , 下面是关于两者的区别
Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。
如果你是一个具有使用 SVN 背景的人,你需要做一定的思想转换,来适应 Git 提供的一些概念和特征。
Git 与 SVN 区别点:
- **1、Git 是分布式的,SVN 不是**:这是 Git 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。
- **2、Git 把内容按元数据方式存储,而 SVN 是按文件:**所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn、.cvs 等的文件夹里。
- **3、Git 分支和 SVN 的分支不同:**分支在 SVN 中一点都不特别,其实它就是版本库中的另外一个目录。
- **4、Git 没有一个全局的版本号,而 SVN 有:**目前为止这是跟 SVN 相比 Git 缺少的最大的一个特征。
- **5、Git 的内容完整性要优于 SVN:**Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
三、git的安装
git的下载地址:
https://git-scm.com/downloads
下载好后,双击打开,下一步,下一步,安装即可,当在任意目录右键有git的方式,即为安装成功。
四、基础命令
官方教程:
http://git-scm.com/docs
1、注册账号
使用git之前 , 需要先初始化一个账号 , 可以使用下面的命令初始化:
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
2、初始化仓库
# 初始化工作区域
git init
# 添加文件
git add "文件名"
# 添加当前目录下的所有文件
git add .
# 查看工作区域状态
git status
3、github创建远程仓库
上面的初始化仓库命令 , 只是在本地创建好仓库 , 接下来在使用github创建一个远程仓库 , 当然前提你要有一个github账号 , 这个申请注册非常的简单。
登录github账号,点击New repository:
填好相关信息:
然后就创建好了:
这里会给一些提示命令:
echo "# test" >> README.md
git init
git add README.md # 添加到暂存区
git commit -m "first commit" # 提交
git branch -M main
git remote add origin https://github.com/1derian/test.git
git push -u origin main
# 本地已经有了一个仓库
git remote add origin https://github.com/1derian/test.git
git branch -M main
git push -u origin main
# 代码
# 初始化工作区域
git init
# 添加当前目录下的所有文件
git add .
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/1derian/thinkphp5-rce.git
git push -u origin main
4、本地仓库推到远程
这里我们在本地新建了个文件夹,里面放了一个文件:
输入命令,提交:
命令:git push -u orgin main
结果:
如果遇到超时错误,可以设置一个代理:
git config --global http.proxy ip:port
git config --global https.proxy ip:port
5、再次推送
当你的项目中又添加了东西,创建了新的文件,那可以这样做:
git add .
git commit -m “second commit”
git push -u origin main
6、补充
.gitignore 文件中可以设置忽略提交的文件/文件夹 , 该操作一定是在第一次git add . 之前
比如我的工作目录下有一个config.txt , 不想推送到远程仓库中 , 你可以这样做
当然也支持通配符:
target //忽略这个target目录
angular.json //忽略这个angular.json文件
log/* //忽略log下的所有文件
css/*.css //忽略css目录下的.css文件
五、总结
这些仅仅是git的九牛一毛 , 但是也够新手操作的了 , 关于git更多的玩法 , 你会在真实的项目中 , 以及解决的报错中慢慢的学习到git的强大
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)