深入理解 Git 一个开发者的必备工具

深入理解 Git 一个开发者的必备工具

  1. 演示地址 演示地址
  2. 获取更多 获取更多
  • 在现代软件开发中,版本控制系统扮演着至关重要的角色。其中,Git 是最流行的选择之一。无论你是新手还是有经验的开发者,了解 Git 的基本概念和使用方法都能大大提升你的工作效率。

什么是 Git?

  • Git 是一个分布式版本控制系统,旨在高效地处理从小型到大型的项目。与传统的版本控制系统不同,Git 允许每个开发者在本地拥有一个完整的版本库,这使得协作和分支管理变得更加灵活。

git 工作流

  • 首先我们的了解 Git 通常的操作流程,网上流行的不错一张图
    alt text

  • 工作区:
    本地项目存放文件的位置,可以理解成图上的 workspace

  • 暂存区 (Index/Stage):
    顾名思义就是暂时存放文件的地方,通过是通过 add 命令将工作区的文件添加到缓冲区

  • 本地仓库(Repository)
    通常情况下,我们使用 commit 命令可以将暂存区的文件添加到本地仓库,通常而言,HEAD 指针指向的就是 master 分支

  • 远程仓库(Remote)

举个例子,当我们使用 GitHub 托管我们项目时,它就是一个远程仓库。通常我们使用 clone 命令将远程仓库代码拷贝下来,本地代码更新后,通过 push 托送给远程仓库。

Git 安装指南

  1. Windows
  • 下载: 前往 Git for Windows 网站,下载最新的安装程序。
  • 安装: 运行下载的安装程序,按照向导进行操作。推荐使用默认选项。
  • 验证安装: 打开命令提示符(cmd)或 PowerShell,输入以下命令:
git --version
  1. macOS
  • 使用 Homebrew: 如果你已安装 Homebrew,可以通过以下命令安装 Git:
brew install git
  • 验证安装: 打开终端,输入:
git --version
  1. Linux
  • Debian/Ubuntu:
sudo apt update
sudo apt install git
  • CentOS/Fedora:
sudo dnf install git  # Fedora
sudo yum install git  # CentOS
  • 验证安装: 打开终端,输入:
git --version
  1. 如用户名和邮箱:
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

git 常用命令

  1. 创建新仓库
git init
  1. 克隆远程仓库
git clone 仓库地址
  1. 查看当前状态
git status
  1. 查看变更(未暂存和已暂存):
git diff           # 未暂存的变更
git diff --cached  # 已暂存的变更
  1. 添加文件到暂存区
git add 文件名
git add .          # 添加所有变更
  1. 提交变更
git commit -m "提交信息"
  1. 查看所有分支
git branch
  1. 创建新分支
git branch 新分支名
  1. 切换分支
git checkout 分支名
  1. 切换分支
git merge 分支名
  1. 删除分支
git branch -d 分支名
  1. 添加远程仓库
git remote add origin 仓库地址
  1. 推送到远程仓库
git push origin 分支名
  1. 拉取远程变更
git pull
  1. 查看提交历史
git log
  1. 查看简洁历史
git log --oneline
  1. 重置当前分支的 HEAD 到某个提交
git reset --hard 提交哈希
  1. 解决合并冲突后继续合并
git merge --continue

git 高级命令

  1. 交互式暂存
  • 使用 git add -p,你可以逐块选择需要暂存的改动,使提交更精确
git add -p
  1. 创建标签
git tag -a 标签名 -m "说明"
  1. 查看标签
git tag
  1. 删除标签
git tag -d 标签名

last

  1. 交互式暂存
  • 使用 git add -p,你可以逐块选择需要暂存的改动,使提交更精确
git add -p
  1. 创建标签
git tag -a 标签名 -m "说明"
  1. 查看标签
git tag
  1. 删除标签
git tag -d 标签名
  1. 推送标签到远程
git push origin 标签名
  1. 推送标签到远程
git push origin 标签名
  1. 修补提交
  • 如果你需要修改最近的提交,可以使用
git commit --amend
  1. 查看具体提交的更改
git show 提交哈希
  1. 图形化查看提交历史
git log --graph --oneline --decorate --all
  1. 查找文件的历史
git log -- 文件名
  1. 解决冲突
  • 在合并或变基时发生冲突后,解决冲突后继续操作:
git add 解决的文件
git rebase --continue  # 或者 git merge --continue
  1. 添加子模块
  • 子模块可以管理依赖于其他 Git 仓库的项目
git submodule add 仓库地址
  1. 初始化和更新子模块
git submodule init
git submodule update
  1. Cherry-Pick
  • Cherry-pick 允许你从其他分支选择特定的提交
git cherry-pick 提交哈希
  1. 撤销未暂存的更改
git checkout -- 文件名
  1. 撤销已暂存的更改
git reset HEAD 文件名
  1. 查看某个文件在不同版本之间的差异
git diff 提交哈希1 提交哈希2 -- 文件名
  1. 查看远程信息
git remote -v
  1. 添加远程仓库
git remote add origin 仓库地址
  1. 推送到远程仓库
git push origin 分支名
  1. 推送所有分支到远程
git push --all origin
  1. 版本回滚
git revert 提交哈希

分支命名规范

分支命名规范

忽略文件 .gitignore

  • 这个文件的作用,会去忽略一些不需要纳入 Git 管理这种,我们也不希望出现在未跟踪文件列表,那么我们来看看如何配置该文件信息。
# 此行为注释 会被Git忽略

# 忽略 node_modules/ 目录下所有的文件
node_modules


# 忽略所有.vscode结尾的文件
.vscode

# 忽略所有.md结尾的文件
*.md

# 但README.md 除外
!README.md

# 会忽略 doc/something.txt 但不会忽略doc/images/arch.txt
doc/*.txt

# 忽略 doc/ 目录下所有扩展名为txt文件

doc/**/*.txt

联系我们

  1. 关注我们
  1. 联系作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值