Git 常用命令

Git 理论

首先需要知道 Git 的几个区(工作区、暂存区和本地仓库)和几个状态(Untracked、Unmodify、Modified、Staged),如果连上 GitHub 则加上远程仓库。

在这里插入图片描述

工作区(WorkSpace):需要通过Git进行版本控制的目录和文件。

暂存区(Index/Stage):或者叫待提交更新区,在提交进入repo之前,我们可以把所有的更新放在暂存区。

本地仓库(Local Repository):一个存放在本地的版本库;HEAD会只是当前的开发分支(branch)

远程仓库(Remote):GitHub 远程保存的仓库

在这里插入图片描述

未跟踪(Untracked):未被 git 进行跟踪的文件,可以通过 git add 命令加入暂存区

未修改(Unmodified):未修改,版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为 Modified. 如果使用 git rm 移出版本库, 则成为 Untracked 文件

被修改(Modified):文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态, 使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改

暂存态(Staged):执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态. 执行git reset HEAD filename取消暂存, 文件状态为Modified

配置相关

# 配置用户名和邮箱
git config --global user.name "Your Name"
git config --global user.email "email@example.com"

# 设置 http/https 代理
git config --global http.proxy http://127.0.0.1:8080
git config --global https.proxy https://127.0.0.1:8080

# 取消代理
git config --global --unset http.proxy
git config --global --unset https.proxy

# 查看系统 config
git config --system --list
  
# 查看当前用户(global)配置
git config --global --list
 
# 查看当前仓库配置信息
git config --local --list

分支

# 新建本地分支
git branch 本地分支名

# 推送本地分支内容到指定远程分支,远程分支不存在则新建
git push origin 本地分支名:远程分支名

# 上一条命令特例,默认远程分支名为本地分支名
git push origin 本地分支名

# 本地切换分支
git checkout 本地分支名

# 查看本地分支
git branch

# 查看本地和远程分支
git branch -a

# 本地分支和远程分支建立联系,push 时便可以直接 push 到指定的分支
git push --set-upstream origin 本地分支名:远程分支名

# 上一条特例,默认和本地分支同名的远程分支建立联系
git push --set-upstream origin 本地分支名

# 查看本地分支和远程分支的对应关系
git branch -vv

# 分支合并:将指定分支合并到当前分支(发生冲突手动解决)
git merge 分支名

# 拉取本地不存在的远程分支,并在本地创建一个新的分支【本地和远程分支自动关联】
git checkout -b 本地分支名 origin/远程分支名

# 拉取远程分支到本地
git fetch origin 远程分支名

# 删除本地分支
git branch -d 本地分支名

# 删除远程分支
git push origin --delete 远程分支名

1. git fetch

git fetch 取回远程分支内容之后,可以通过 git checkout 命令切换到对应的远程分支,查看分支的内容。如果需要将远程分支和本地分支进行合并,在对应的本地分支上使用 git merge origin/远程分支名 进行合并即可。

优点

  • 防止污染代码。刚接触项目的人员可能不熟悉项目规范,如果直接在主分支上进行操作,项目将很难进行维护。因此一般都是新建一个分支,后续开发在自己的分支上进行操作,开发完成后由项目代码审核人员审核之后并入主分支。
  • 方便实现并行开发。如果多个功能可以并行开发,且都在主分支上进行操作,那么当一个功能开发完成需要提交测试文件的时候,需要人工判断哪些文件需要提交。

操作流程

  • 新建本地分支
  • 推送本地分支到远程
  • 将本地分支和远程分支建立联系
  • 在本地分支上进行开发(流程和在主分支上一样)
  • 开发完成审核通过之后将开发分支合并到主分支并提交

参考链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值