git及Gitlab使用
历史
你也许会想,为什么Linus不把Linux代码放到版本控制系统里呢?不是有CVS、SVN这些免费的版本控制系统吗?因为Linus坚定地反对CVS和SVN,这些集中式的版本控制系统不但速度慢,而且必须联网才能使用。有一些商用的版本控制系统,虽然比CVS、SVN好用,但那是付费的,和Linux的开源精神不符。
- 2005年Linux的创始人Linus用两周时间用c写的开源免费的分布式管理系统。
基本使用
安装
- 基础设施研究中心:https://fdoc.epoint.com.cn:3366/?search=git
- 包管理winget:
- 任意网站
clone
git clone
复制远程仓库到本地仓库,一般一个仓库只用一次
add
git add .
git暂存区,介于版本库和工作目录的中间
commit
git commit -m ""
push
git push origin master
进阶使用
branch
git branch
## 切换分支
git checkout -b new branch
merge
git merge
git合并到主分支
rebase
git rebase -i <commit-hash>
squash
git rebase --continue
git push -f origin <branch-name>
rm
git rm --cached file-name
Gitlab及分支管理
生成非对称加密密钥
git config --global user.name 'gxhao'
git config --global user.email '1625546088@qq.com'
# 生成密钥(注意设置git账号密码
ssh-keygen -t rsa -C '1625546088@qq.com'
# 检测是否配置成功
ssh -T git@github.com
首先,我要感谢您分享了这篇关于Git和Gitlab使用的博客。您的文章对于初学者来说是非常有帮助的。您详细介绍了Git的历史背景、基本使用方法、进阶使用方法以及Gitlab和分支管理等方面的内容。这使得读者能够更好地理解Git的重要性和如何使用它。
您文章中提到的Git的历史背景部分很有趣。了解Linux创始人Linus为什么要创建这个开源免费的分布式管理系统,以及他对CVS和SVN的反对,可以帮助读者更好地理解Git的核心理念和优势。
在基本使用和进阶使用部分,您提供了许多实用的Git命令,如clone、add、commit、push、branch、merge、rebase和rm等。这些命令示例对于初学者来说非常有用,可以帮助他们快速掌握Git的使用方法。
在Gitlab及分支管理部分,您详细介绍了如何生成非对称加密密钥以及主分支、dev分支、代码审查和ci/cd的相关内容。这些信息对于那些希望建立自己的代码仓库和进行团队协作的读者来说是非常有价值的。
然而,在文章中,我发现有一些小问题,但这并不影响整体质量。例如,在rebase部分,您提到了“git rebase -i <commit-hash>”,但未对commit-hash进行详细解释。对于初学者来说,可能会对此感到困惑。建议您在此处加入关于commit-hash的简要解释,以便读者更好地理解这个命令的用途。
总的来说,这篇博客对于初学者来说是非常有帮助的。我鼓励您继续分享关于Git和其他相关主题的文章。同时,也建议您在文章中对一些概念和命令进行更详细的解释,以便读者更好地理解和掌握这些知识。再次感谢您的分享!