一、Git
Git(读音为/gɪt/。中文 饭桶 )是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
了解更多可到GIT官网:Git - Downloads
GIT一般工作流程如下:
1.从远程仓库中克隆 Git 资源作为本地仓库。
2.从本地仓库中checkout代码然后进行代码修改
3.在提交前先将代码提交到暂存区。
4.提交修改。提交到本地仓库。本地仓库中保存修改的各个历史版本。
5.在修改完成后,需要和团队成员共享代码时,可以将代码push到远程仓库。
我的windows版本安装包:
链接:https://pan.baidu.com/s/1fEEHzKcETTaTRJ5UTUL_UQ?pwd=s7y4
提取码:s7y4
Linux版本下载地址 :Index of /pub/software/scm/git/ (kernel.org)
解压后会在根路径下看到 git-bash.exe,双击打开之后可以写Linux命令及其git命令;
解压后会在根路径下看到git-cmd.exe,双击打开之后可以写Windows命令及其git命令;
有关GIT的安装使用可以参考如下文章:Git 2.24.0 最新版下载安装 配置使用 基本命令 本地仓库 远程仓库 - 梦相随1006 - 博客园 (cnblogs.com)
在 Windows 上安装 Git 后,可以按照以下步骤来启动它:
1. 打开开始菜单:点击任务栏左下角的 Windows 图标或按下 Win 键。
2. 在开始菜单中,找到 "Git" 文件夹(或者直接搜索 "Git")。
3. 点击 "Git" 文件夹,将看到各种 Git 相关的程序和工具。
4. 如果想使用 Git Bash(基于 MinGW-w64),点击打开 "Git Bash"。这将启动一个类似于 Unix 命令行的 Git Bash 终端。
5. 如果想使用 Git GUI(图形用户界面),点击打开 "Git GUI"。
6. 另外,还可以找到其他 Git 工具,如 "Git CMD"(基于 Windows 命令提示符)和 "Gitk"(用于查看版本历史的图形界面工具)。根据需求选择相应的工具。
注意:
确保在安装 Git 时选择了要安装的组件,如 Git Bash、Git GUI 等。如果在安装过程中未选择某个组件,则相应的程序可能不会出现在开始菜单中。
另外,也可以通过运行 `git` 命令来启动 Git 的命令行界面。打开命令提示符窗口(Win + R,然后输入 `cmd`),输入 `git` 并按下回车键即可。如果正确地安装了 Git,并将其添加到系统的环境变量中,这将启动 Git 的命令行界面。
二、Git Bash
2.1Git Bash概述
Git Bash 是一个在 Windows 系统上运行的命令行终端。它为用户提供了一个类似于 Unix shell 的环境,同时集成了 Git 版本控制系统。
Git Bash 在 Windows 上的主要作用是:
- 1. 运行 Git 命令:Git 是一个流行的分布式版本控制系统,用于跟踪和管理软件开发项目的变化。Git Bash 提供了一个命令行界面,使用户能够使用 Git 命令进行代码版本控制、提交更改、创建分支、合并代码等。
- 2. 支持常用的命令行工具:除了 Git,Git Bash 还内置了一些常用的命令行工具和实用程序,例如 grep、awk、sed,以及其他常见的 Unix 工具。这使得在 Windows 上使用 Git Bash 可以更方便地执行各种命令行任务。
- 3. 提供类 Unix shell 环境:Git Bash 基于 MinGW-w64,是一个在 Windows 上模拟 Unix 环境的工具集。它提供了一个基于 Bash 的 Shell,允许用户在 Windows 上使用类似于 Linux 或 macOS 的命令行语法和工具。
Git Bash 为 Windows 用户提供了一个功能强大的命令行环境,使他们能够使用 Git 和其他常用命令行工具来管理代码、运行脚本和执行各种任务。无论是进行软件开发还是进行系统管理,Git Bash 都是一个非常有用的工具。
2.2启动 Git Bash 终端
要在 Windows 上启动 Git Bash 终端(基于 MinGW-w64),请按照以下步骤进行操作:
1. 安装 Git:首先,确保已经在计算机上安装了 Git;
2. 打开 Git Bash:一旦完成安装,你可以通过以下方法打开 Git Bash 终端:
- - 在开始菜单中,搜索并选择 "Git Bash"。
- - 在安装目录中找到 "Git Bash" 快捷方式(例如 `C:\Program Files\Git\git-bash.exe`),双击打开它。
注意:
当打开 Git Bash 终端时,将会看到一个类似于 Linux 终端的窗口,可以在其中输入和执行 Git 命令。
3. 验证安装:为了验证 Git Bash 是否正确安装并配置,可以尝试运行以下命令来显示 Git 的版本信息:
git --version
如果成功显示 Git 版本号,则说明 Git Bash 正常工作。如图所示:
成功地启动 Git Bash 终端,可以使用其中的 Git 命令来管理代码仓库和进行其他操作。
2.3MinGW-w64概述
MinGW-w64 是一个用于 Windows 平台的开发环境,它提供了一套工具和库,用于支持在Windows 上进行 C 和 C++ 编程。它是 MinGW(Minimalist GNU for Windows)项目的一个分支,旨在为 Windows 提供 GCC(GNU Compiler Collection)编译器集合和相关工具。
MinGW-w64 主要有以下功能和特点:
- 1. 编译器套件:MinGW-w64 包含 GCC 编译器集合,包括 C、C++ 和 Fortran 编译器,可以将源代码编译成可执行文件或库。
- 2. 开发工具:MinGW-w64 提供了在 Windows 环境下进行开发所需的一些常用工具,如 Make、GDB 调试器等。
- 3. 头文件和库支持:MinGW-w64 提供了与 Windows API 和标准 C/C++ 库兼容的头文件和静态/动态链接库,使开发人员能够访问和使用 Windows 平台特定的功能和功能。
- 4. 兼容性:MinGW-w64 支持 32 位和 64 位 Windows 系统,并提供了对 Windows XP 及更高版本的广泛兼容性。
使用 MinGW-w64,开发人员可以在 Windows 上进行 C 和 C++ 编程,并构建原生的 Windows 应用程序或库。它提供了强大的开发工具和库支持,使得开发者能够轻松地进行跨平台开发或针对 Windows 平台进行优化的开发工作。
2.3.1常用编译命令
在 MinGW-w64 环境中,可以使用一些常见的编译命令来编译和构建 C 或 C++ 项目。以下是一些常用的编译命令:
1. 编译单个源文件:
gcc -c file.c -o file.o
或
g++ -c file.cpp -o file.o
2. 构建可执行文件:
gcc file1.o file2.o -o executable
或
g++ file1.o file2.o -o executable
3. 编译并运行一个源文件:
gcc file.c -o executable && ./executable
或
g++ file.cpp -o executable && ./executable
4. 使用预处理器查看源代码的预处理结果:
gcc -E file.c -o preprocessed_file.c
或
g++ -E file.cpp -o preprocessed_file.cpp
5. 调试编译选项,生成调试符号信息:
gcc -g file.c -o executable
或
g++ -g file.cpp -o executable
这只是一些常见的编译命令示例,还有其他一些编译选项和参数可以在编译时使用,例如优化标志、链接库等。要了解更多关于 MinGW-w64 的编译命令和选项,请参考 MinGW-w64 官方文档或相关资源,链接:MinGW-w64
三、Git GUI
Git GUI 是一个图形用户界面工具,它提供了一些常用的 Git 操作命令。以下是在 Git GUI 中常用的命令:
- 1. Open Repository:打开一个现有的 Git 仓库。
- 2. Clone Existing Repository:克隆一个远程仓库到本地。
- 3. Create New Repository:创建一个新的 Git 仓库。
- 4. File Status:查看文件的状态,包括修改、添加、删除等。
- 5. Refresh:刷新当前视图,以更新文件状态和提交信息。
- 6. Stage Changed:将修改的文件添加到暂存区。
- 7. Unstage Changed:将已经添加到暂存区的文件移出暂存区。
- 8. Commit:提交暂存区的更改,并填写提交消息。
- 9. Amend Last Commit:修改上一次提交的消息或添加新的文件。
- 10. Push:将本地分支推送到远程仓库。
- 11. Pull:从远程仓库获取最新更改并合并到当前分支。
- 12. Fetch From Remote:从远程仓库获取最新更改,但不合并到当前分支。
- 13. Merge Local Branches:合并两个本地分支。
- 14. Rebase Current Branch:将当前分支变基到另一个分支。
- 15. Tag:创建标签,并附加相关信息。
- 16. Branch:创建新的分支或切换到其他分支。
- 17. Checkout:检出指定的分支或修订版本。
- 18. Reset:重置当前分支到指定的提交或分支。
- 19. Ignore File:忽略指定文件或文件夹,使其不受版本控制。
这些命令可以在 Git GUI 的菜单栏或工具栏中找到,并通过与其对应的选项进行操作。Git GUI 提供了直观的图形界面,方便用户进行常见的 Git 操作。根据需求,选择适当的命令执行相应的操作即可。
四、Git CMD
Git CMD 是 Windows 上的一个命令行界面,用于执行 Git 命令和管理代码库。它是 Git for Windows 软件包中的一部分,提供了一个与 Windows 命令提示符(cmd.exe)兼容的Git 命令行环境。
以下是关于 Git CMD 的一些特点和使用方式:
- 1. Git 命令:Git CMD 提供了完整的 Git 命令集,可以使用它来进行版本控制、提交更改、创建和合并分支、查看日志等。通过在 Git CMD 中运行 Git 命令,可以轻松地管理你的 Git 仓库。
- 2. Windows 集成:Git CMD 可以无缝集成到 Windows 系统中。一旦安装了 Git for Windows 软件包,Git CMD 就会自动注册为默认的 Git 命令行工具。这意味着你可以在任何 Windows 命令提示符窗口中直接运行 Git CMD。
- 3. 兼容性:Git CMD 相对于常规的 Windows 命令提示符具有更好的兼容性。它使用类 Unix shell 的命令行语法,允许你执行类似于 Linux 或 macOS 上的命令。这使得在 Windows 上使用 Git CMD 更加便捷和灵活。
- 4. 配置和扩展:与其他命令行工具一样,你可以通过设置 Git 配置来自定义 Git CMD 的行为。通过配置文件、全局选项和别名,你可以定义个人偏好和定制化 Git CMD 的外观和行为。
总结:
Git CMD 是 Windows 上的一个命令行工具,用于提供与 Git 相关的功能。它允许用户在 Windows 平台上运行 Git 命令,并与 Git 仓库进行交互。无论是在单个项目中还是在团队开发中,Git CMD 是管理和版本控制代码的重要工具。
五、Git常用命令
Git 是一个强大的版本控制系统,以下是一些常用的 Git 命令:
5.1. 创建与克隆:
- - `git init`:在当前目录初始化一个新的 Git 仓库。
- - `git clone <repository>`:克隆远程仓库到本地。
5.2. 添加与提交:
- - `git add <file>`:将文件添加到暂存区。
- - `git commit -m "<message>"`:提交暂存区的更改并添加提交消息。
5.3. 分支与合并:
- - `git branch`:列出所有分支。
- - `git branch <branch_name>`:创建新分支。
- - `git checkout <branch_name>`:切换到指定分支。
- - `git merge <branch_name>`:将指定分支合并到当前分支。
5.4. 获取与推送:
- - `git pull`:获取远程仓库的最新更改并合并到本地分支。
- - `git push <remote> <branch>`:将本地分支推送到远程仓库。
5.5. 状态与日志:
- - `git status`:显示工作区和暂存区的状态。
- - `git log`:查看提交历史记录。
5.6. 撤销与重置:
- - `git revert <commit>`:撤销指定提交的更改。
- - `git reset <commit>`:重置当前分支到指定提交。
5.7. 远程仓库管理:
- - `git remote add <name> <url>`:添加远程仓库。
- - `git remote -v`:显示远程仓库的详细信息。
5.8. 标签管理:
- - `git tag`:列出所有标签。
- - `git tag <tag_name>`:创建一个标签。
这只是一小部分 Git 命令的示例,Git 提供了非常丰富的功能和命令集。可以通过运行 `git help` 或 `git <command> --help` 来获取关于特定命令的更多信息,并查阅 Git 官方文档以获得更全面的了解。
下面是每个命令的简要说明:
①开始一个工作区:
- - `clone`:克隆一个仓库到新目录。
- - `init`:创建一个空的 Git 仓库或重新初始化一个现有仓库。
②对当前更改进行操作:
- - `add`:将文件内容添加到暂存区。
- - `mv`:移动或重命名文件、目录或符号链接。
- - `restore`:恢复工作树中的文件。
- - `rm`:从工作树和暂存区中删除文件。
③查看历史和状态:
- - `bisect`:使用二分查找定位引入错误的提交。
- - `diff`:显示提交之间、提交与工作树之间等的差异。
- - `grep`:打印匹配模式的行。
- - `log`:显示提交日志。
- - `show`:显示不同类型的对象。
- - `status`:显示工作树的状态。
④管理、标记和调整常见历史:
- - `branch`:列出、创建或删除分支。
- - `commit`:记录对仓库的更改。
- - `merge`:合并两个或多个开发历史记录。
- - `rebase`:在另一个基准点上重新应用提交。
- - `reset`:将当前 HEAD 重置为指定状态。
- - `switch`:切换分支。
- - `tag`:创建、列出、删除或验证使用 GPG 签名的标签对象。
⑤协作:
- - `fetch`:从另一个仓库下载对象和引用。
- - `pull`:从另一个仓库或本地分支获取并集成更改。
- - `push`:更新远程引用以及关联的对象。
可以使用 `git help <command>` 查看特定命令的详细信息,例如 `git help clone`。通过阅读帮助文档,可以进一步了解每个命令的用途和用法。
六、Git基础信息
要查看 Git 的基础信息,你可以使用以下命令:
6.1. 查看配置信息:
- - `git config --list`:列出所有的 Git 配置信息。
- - `git config --global user.name`:查看全局用户名设置。
- - `git config --global user.email`:查看全局用户邮箱设置。
例如:
git config --list
它包含了一些配置选项和对应的值。下面是每个配置选项的解释:
- - `diff.astextplain.textconv=astextplain`:指定将文本文件转换为纯文本进行 diff 比较。
- - `filter.lfs.clean=git-lfs clean -- %f`:指定使用 Git LFS 清理(clean)过滤器处理文件。
- - `filter.lfs.smudge=git-lfs smudge -- %f`:指定使用 Git LFS 模糊(smudge)过滤器处理文件。
- - `filter.lfs.process=git-lfs filter-process`:指定使用 Git LFS 过滤器进行处理。
- - `filter.lfs.required=true`:设置 Git LFS 过滤器为必需,确保正确处理 LFS 文件。
- - `http.sslbackend=openssl`:指定使用 OpenSSL 作为 SSL 后端。
- - `http.sslcainfo=D:/Git/mingw64/etc/ssl/certs/ca-bundle.crt`:指定 SSL 证书的路径。
- - `core.autocrlf=true`:启用自动转换行尾符(CRLF <-> LF)功能。
- - `core.fscache=true`:启用文件系统缓存。
- - `core.symlinks=false`:禁用符号链接处理。
- - `pull.rebase=false`:在拉取(pull)操作时不使用 rebase。
- - `credential.helper=manager`:指定使用凭据管理器来处理身份验证信息。
- - `credential.https://dev.azure.com.usehttppath=true`:指定使用 HTTP 路径来处理 Azure DevOps 的 HTTPS 连接。
- - `init.defaultbranch=master`:指定默认分支名称为 "master"。
这些配置选项可以根据项目的需要进行调整和设置。如果想进一步了解每个选项的详细说明和其他可用选项,请参考 Git 官方文档或运行 `git help config` 来获取更多信息。
6.2. 查看分支信息:
- - `git branch`:列出所有本地分支。
- - `git branch -r`:列出所有远程分支。
- - `git branch -a`:列出所有本地和远程分支。
6.3. 查看提交历史:
- - `git log`:显示完整的提交历史记录。
- - `git log --oneline`:以简洁的单行形式显示提交历史。
- - `git log --graph`:以图形方式显示提交历史(展示分支和合并)。
6.4. 查看当前状态:
- - `git status`:显示工作区和暂存区的状态。
- - `git diff`:显示当前未暂存的更改。
6.5. 查看远程仓库信息:
- - `git remote -v`:显示远程仓库的详细信息。
- - `git remote show <remote_name>`:显示指定远程仓库的详细信息。
6.6. 查看标签信息:
- - `git tag`:列出所有标签。
- - `git show <tag_name>`:显示指定标签的详细信息。
本篇简单介绍GIT的应用,更多内容请参考官方资料。