相信刚接触到这些网站(我愿称之为git全家桶,哈哈哈哈),应用的小伙伴都蒙了,只能一步步跟着教程走,也不知道到底是干什么的。查一些资料,在此总结一下,希望能帮助到你们
一.Git
- Git 是一个分布式版本控制系统,用于跟踪文件和代码的变化。
- 它允许多人协作开发,跟踪更改历史,并解决不同版本之间的冲突。
- Git 是一个命令行工具,开发人员可以使用它来管理项目的版本和代码。
其中包含Git Bash,Git CMD,Git FAQs,Git GUI,Git Release Notes,下面我们一一介绍。
1.Git Bash(最常用)
意为:命令行界面
Git Bash 是一个 Microsoft Windows 应用程序,具有 Git 命令行 shell 体验和实用程序,例如安全外壳协议 (SSH)、安全复制协议 (SCP)、CAT(连接命令)等。 Bash 是 Bourne Again Shell 的首字母缩写词,这是一个 GNU 项目 shell。 shell 用于通过执行命令与操作系统交互,Bash 是 Linux 和 macOS 上使用的默认 shell。 注意:有关基本 Git 功能的详细概述,请阅读我们的 Git 初学者指南。
Git Bash 在 Windows 上模拟 bash 环境,允许用户在 Windows 操作系统上使用 Bash shell 和大多数标准 Unix 命令。用户可以通过在 Git Bash 中运行命令来与存储库和 Git 元素进行交互。
引用网站:什么是Git Bash?如何使用Git Bash命令? (lsbin.com)
简而言之,就是和用户交互的,一定程度上有点像cmd吧。
列举部分git的命令行,如
git init # 初始化仓库
git clone github链接 # 克隆github上的项目
git status # 显示工作区和暂存区状态
git add 文件name # 在该仓库该分支加入该文件
git add . # 加入所有改变的文件
git branch # 显示当前仓库的分支
git checkout branchname # 跳转到该分支
git checkout -b newbranchname # 创建新分支,并直接跳转
git branch -D branchname # 删除该分支
git commit -m "commit message" # 提交所有更新的文件
这里有菜鸟教程的命令大全:Git 常用命令大全 (runoob.com)
2.Git CMD
意为:命令行提示符
Git CMD是Windows操作系统上的命令行解释程序。当你在Windows上安装git并且习惯使用命令行时,可以使用cmd来运行git命令。
下面说明bash和cmd的不同之处:
顾名思义,bash是linux风格的命令行,路径也是linux式的,可以使用windows和linux的命令;
cmd是windows风格的命令行,可以使用windows命令;
此外,还有一个最大的不同点,git-cmd是天生就带了系统的PATH环境变量,这一点会导致如果你运行某些脚本的时候,如果依赖某些安装的程序,如python、node这些,git-bash就会提示不存在对应的命令,而git-cmd可以正确运行。
(转自【Git】git-bash和git-cmd的不同功用 - 简书 (jianshu.com))
3.Git FAQS(没用过,市面上没有找到解答,问的chat哥
)
"Git FAQs" 通常指的是"Git 常见问题解答",这是一个集合了关于 Git 版本控制系统的常见问题及其解答的文档或网页。这种类型的资源旨在为使用 Git 的人们提供有关常见问题的解决方案,帮助他们更好地理解和使用 Git。
在一个 Git FAQs 中,你可能会找到以下类型的内容:
常见问题解答: 包括有关 Git 基础知识、常见操作、问题排查等方面的问题和解答。
安装与配置: 关于如何安装 Git 以及常见的配置问题和解决方法。
分支与合并: 有关分支创建、合并、冲突解决等方面的问题和技巧。
远程操作: 如何克隆、推送、拉取远程仓库,以及与远程仓库相关的问题。
问题排查与解决: 包括一些常见的问题排查技巧,如何处理错误信息等。
高级主题: 更深入的主题,如 Git 子模块、rebase、stash 等。
工作流程和最佳实践: 提供关于使用 Git 的最佳实践、团队协作、工作流程等方面的建议。
"Git FAQs" 可以是官方文档、社区贡献的文章、博客帖子等形式。它们对于那些刚开始使用 Git,或者在使用 Git 过程中遇到一些问题的人们,都是非常有价值的资源,可以帮助他们更好地理解和利用 Git 的功能。
4.Git GUI(没用过,没有发言权,哭哭)
Git GUI是Git软件的图形化操作,Git Bash是Git软件的命令行操作。
可以参考一下这个教程:Git GUI的基本使用_git gui是干嘛的_树也有脚心心的博客-CSDN博客
5.Git Release Notes
"Git Release Notes" 是帮助用户和开发者了解 Git 新版本内容的重要资源。通过阅读这些说明,用户可以了解新功能、改进和修复,以及如何在新版本中更好地使用 Git。通常,这些信息可以在 Git 官方网站、GitHub 存储库、邮件列表等地方找到。
二.GitLab
- GitLab 是一个类似于 GitHub 的代码托管平台,但它不仅提供了基本的代码托管功能,还有许多额外的功能。
- GitLab 可以在自己的服务器上搭建,也有托管在 GitLab 公共服务器上的版本。
- 它提供了集成的持续集成、持续交付、容器注册表等功能,使其成为一个全面的 DevOps 平台。
- GitLab 是一个基于git实现的在线代码仓库软件,提供web可视化管理界面,通常用于企业团队内部协作开发
三.GitHub
- GitHub 是一个基于 Git 的代码托管平台。
- 它提供了在线的代码托管、版本控制、协作和问题追踪功能。
- 开发人员可以将他们的代码存储在 GitHub 上,并与其他人共享。
- 通过 pull requests,可以进行协作开发和代码审查
下面是GitHub和GitLab适用情况:
使用 GitLab 的情况:
自托管需求:如果你希望在自己的服务器上搭建代码托管平台,那么 GitLab 是一个很好的选择。GitLab 提供了一个开源的版本,你可以将其安装在自己的服务器上,并在自己的内部网络中使用。
全面的 DevOps 功能:GitLab 提供了不仅仅是代码托管的功能,还包括持续集成、持续交付、容器注册表等一系列 DevOps 工具。如果你需要集成完整的 CI/CD 流程,GitLab 是很好的选择。
企业和团队协作:GitLab 提供了强大的团队协作功能,包括问题追踪、项目管理、合并请求等。这使得它成为适用于大型企业和团队的选择。
访问权限控制:GitLab 允许你细粒度地管理用户权限,可以更好地控制谁可以访问和编辑你的仓库。
使用 GitHub 的情况:
开源项目:GitHub 是一个充满活力的开源社区,适合将你的开源项目托管在上面。你可以在 GitHub 上与全球开发者社区共享你的代码。
广泛的用户和资源:GitHub 拥有庞大的用户社区,这意味着你的项目有更大的机会被其他开发者发现、贡献和使用。
个人项目和小团队:如果你只是需要简单的代码托管和版本控制,GitHub 是一个很好的选择,特别是对于个人项目和小团队。
易于使用和上手:GitHub 提供了友好的界面和易于使用的功能,尤其对于初学者来说,它是一个不错的平台。
综上所述,选择 GitLab 还是 GitHub 取决于你的项目规模、开发需求以及是否需要 DevOps 功能。无论选择哪个,都要根据项目的具体要求来做出最合适的决策。
一般来说我们学生用github多一点。
四.GitBlit
- Gitblit 是一个用 Java 编写的纯粹的 Git 仓库浏览器。
- 它可以用于搭建自己的 Git 服务器。
- Gitblit 提供了一个轻量级的 Web 界面,可以查看和管理 Git 仓库,还可以进行用户认证和权限控制。
- 它适用于需要在内部网络上搭建私有 Git 服务器的情况。
- Gitblit 是一个开源的纯 Java 堆栈,用于管理、查看和服务 Git 存储库。
它主要设计为希望托管集中式存储库的小型工作组的工具。
GitLab和GitBlit的区别:
GitBlit 和 GitLab 都是与 Git 代码版本控制系统相关的工具,但它们是不同的产品,没有直接的关联。以下是 GitBlit 和 GitLab 的一些主要区别和特点:
GitBlit:
类型:GitBlit 是一个纯粹的 Git 仓库浏览器和管理器,它专注于提供一个简单的 Web 界面来浏览和管理 Git 仓库。
轻量级:GitBlit 以轻量级为特点,适用于那些只需要简单的 Git 仓库管理功能而不需要额外的复杂功能的场景。
自托管:GitBlit 支持将其部署在你自己的服务器上,这使得你可以在内部网络中搭建私有的 Git 仓库服务。
权限和安全性:GitBlit 提供了用户认证和权限控制功能,可以帮助你控制谁可以访问和操作仓库。
GitLab:
类型:GitLab 是一个全面的 DevOps 平台,它不仅提供 Git 代码托管功能,还包括持续集成、持续交付、容器注册表等功能。
企业级功能:GitLab 提供了一整套的工具,适用于大型企业和团队,包括项目管理、合并请求、问题追踪等。
自托管和托管选项:你可以选择在自己的服务器上搭建 GitLab 实例,也可以使用 GitLab 提供的托管服务(GitLab.com)。
开源社区和商业版本:GitLab 提供了开源的社区版本和付费的企业版本,企业版本提供更多的功能和支持。
虽然 GitBlit 和 GitLab 都是与 Git 相关的工具,但它们在功能、目标用户和定位上有很大的不同。选择使用哪个工具取决于你的需求,如果你需要更全面的 DevOps 功能和团队协作,GitLab 可能更适合;如果你只需要一个轻量级的 Git 仓库浏览器,那么 GitBlit 可能更合适。
五.TotoriseGit
- TortoiseGit 是一个集成到 Windows 资源管理器的图形用户界面 (GUI) 工具,用于与 Git 仓库进行交互。
- 它使得 Git 的基本操作更加直观和易于使用,你可以通过右键单击文件和文件夹来执行 Git 操作。
- TortoiseGit其实是一款开源的git的版本控制系统,也叫海龟git。TortoiseGit提供了人性化的图形化界面,不用像Git一样输入许多语句,像git init、git add、git commit这些语句就通通不用记了。轻松使用鼠标,就可以完成代码的提交和上传。对于使用本地Git的新手来说,TortoiseGit更加简便,更加容易上手。(引用:TortoiseGit的介绍和使用_二十六桥明月夜的博客-CSDN博客)
TortoiseGit 是一个方便的工具,可以帮助你在 Windows 上更轻松地与 GitLab 和 GitHub 上的仓库进行交互,进行克隆、提交、推送等操作。
六.总结篇
总结,Git是一个命令行工具,最常用的是Git Bash。
GitLab类似于 GitHub 的代码托管平台,适用于大企业和大团队开发。
GitHub就是一个开源社区,基于 Git 的代码托管平台。
GitBlit是Git 仓库浏览器,比较轻量级,适用于企业和团队开发。
TotoriseGit用途比较广了,一定程度上可以替代Git Bash,用于 GitLab 和 GitHub 上的仓库进行交互,进行克隆、提交、推送等操作。
希望对你们有些帮助,欢迎评论哦!
码住码住,是不是忘记关注点赞啦