Git 是一个分布式版本控制工具,常用来:

  • 管理代码历史
  • 多人协作开发
  • 切换不同功能分支
  • 合并代码
  • 回退版本

一、Git 常见工作流程

一个最常见的流程是:

  1. 拉取代码
  2. 新建/切换分支
  3. 修改代码
  4. 提交到本地仓库
  5. 推送到远程仓库
  6. 发起合并请求

二、常用命令

1. 初始化仓库

git init

作用:

  • 在当前目录创建一个 Git 仓库

2. 克隆远程仓库

git clone 仓库地址

例如:

git clone https://github.com/example/demo.git

作用:

  • 把远程仓库代码下载到本地

3. 查看当前状态

git status

作用:

  • 查看哪些文件被修改了
  • 哪些文件已暂存
  • 当前所在分支

4. 查看提交记录

git log

简洁一点可以用:

git log --oneline

三、添加和提交代码

1. 添加到暂存区

添加单个文件:

git add 文件名

添加所有修改:

git add .

2. 提交到本地仓库

git commit -m "提交说明"

例如:

git commit -m "fix: 修复登录问题"

四、分支操作

分支是 Git 里非常重要的概念。
不同功能、不同需求通常会放在不同分支开发,避免互相影响。


1. 查看分支

查看本地分支:

git branch

查看所有分支(包括远程):

git branch -a

2. 新建分支

git branch 分支名

例如:

git branch feature/login

3. 切换分支

git checkout 分支名

例如:

git checkout develop

或者新版推荐:

git switch develop

4. 新建并切换分支

旧写法:

git checkout -b 分支名

例如:

git checkout -b feature/login

新版写法:

git switch -c feature/login

作用:

  • 创建一个新分支
  • 并立即切换过去

5. 删除分支

git branch -d 分支名

强制删除:

git branch -D 分支名

五、如何切换分支

这是你特别提到的点,这里单独说一下。


1. 直接切换到已有分支

git checkout 分支名

或者:

git switch 分支名

比如切换到 master

git checkout master

或:

git switch master

2. 创建并切换到新分支

git checkout -b 新分支名

比如:

git checkout -b feature/order

这表示:

  • 基于当前分支创建一个 feature/order
  • 然后切换过去

3. 切换分支前的注意事项

如果你当前分支有代码修改但还没提交,切换分支时可能会:

  • 直接带着修改一起过去
  • 或者因为冲突无法切换

所以通常建议先:

git status

如果有未提交修改,可以选择:

先提交

git add .
git commit -m "临时保存"

或者临时存起来

git stash

切换完再恢复:

git stash pop

六、远程仓库操作

1. 查看远程仓库

git remote -v

2. 拉取远程最新代码

git pull

例如:

git pull origin main

作用:

  • 拉取远程分支最新代码并合并到当前分支

3. 推送本地分支到远程

git push

第一次推送新分支通常写:

git push -u origin 分支名

例如:

git push -u origin feature/login

之后再推送直接用:

git push

七、合并分支

比如你在 feature/login 开发完成,想合并到 main

步骤

1. 切回主分支

git checkout main

2. 拉取最新代码

git pull origin main

3. 合并开发分支

git merge feature/login

八、解决冲突

当两个人修改了同一个文件的同一部分,合并时就可能产生冲突。

Git 会在文件里标记:

<<<<<<< HEAD
当前分支内容
=======
要合并进来的内容
>>>>>>> feature/login

你需要:

  1. 手动修改成最终想保留的内容
  2. 再执行:
git add .
git commit -m "resolve conflict"

九、常见回退操作

1. 撤销工作区修改

git checkout -- 文件名

新版也可用:

git restore 文件名

2. 撤销暂存区内容

git reset HEAD 文件名

或:

git restore --staged 文件名

3. 回退到某次提交

git reset --hard commitId

注意:

  • 这会丢失之后的修改
  • 使用时要小心

十、一个实际例子

假设你接到一个新需求,要开发登录功能。

1. 先切到主分支并拉最新代码

git checkout main
git pull origin main

2. 创建并切换功能分支

git checkout -b feature/login

3. 开发代码后查看状态

git status

4. 添加并提交

git add .
git commit -m "feat: add login page"

5. 推送到远程

git push -u origin feature/login

6. 开发完成后合并

如果本地合并:

git checkout main
git pull origin main
git merge feature/login
git push origin main

十一、面试里可以怎么介绍 Git

你可以这样说:

Git 是一个分布式版本控制工具,主要用于代码管理和团队协作。
日常使用中,我会先从主分支拉取最新代码,然后新建功能分支开发。开发完成后,通过 git addgit commit 提交到本地,再通过 git push 推送到远程。
如果需要切换分支,可以使用 git checkout 分支名 或 git switch 分支名。如果要新建并切换分支,可以用 git checkout -b 分支名
在多人协作时,也会经常用到 git pullgit merge、冲突解决和 git stash 等命令。


十二、最常用命令总结

git clone 仓库地址
git status
git add .
git commit -m "message"
git pull origin main
git push
git branch
git checkout 分支名
git checkout -b 新分支名
git switch 分支名
git merge 分支名
git stash
git stash pop
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐