测试开发之源码篇-Git常用命令整理

原创
陈琦
2023-05-30 10:00:00
1903
摘要:本文列出了Git的一些常用命令,有兴趣的读者可加到浏览器书签,以备日后检索使用。

本文列出了Git的一些常用命令,有兴趣的读者可加到浏览器书签,以备日后检索使用。

基本命令

# 设置代码提交者的用户名
git config --global user.name "chenqi"
# 设置代码提交者的邮箱
git config --global user.email "chenqi@deeptest.com"
# 克隆代码
git clone https://gitee.com/ngtesting/ci_test_pytest.git
# 添加文件到版本库
git add test.txt
# 提交文件到版本库
git commit -m "update files"
# 推送文件到远程仓库
git push

分支操作

# 查看本地分支
git branch   
# 查看远程分支 
git branch -r 
# 参看分支状态
git branch -v
# 创建分支
git branch v1.0
# 切换分支
git checkout v1.0
# 删除本地分支
git branch --delete v1.0
# 删除远程分支
git push origin --delete remote_branch
# 设置本地分支的远程分支
git branch --set-upstream-to=origin/remote_branch local_branch

代码回滚

# 重置“全部3个工作区”为Reset节点的內容,其后所有修改将丢失
git reset --hard xxx
# 重置的同时,把所有(原节点和Reset节点的)差异都混合到“工作区”中
git reset xxx
git reset --mixed xxx
# 重置的同时,把所有(原节点和Reset节点的)差异都混合到“暂存区”中
git reset --soft xxx
# 反做Undo某个版本的修改
git revert -n xxx

Rebase命令

# 切换到本地master分支
git checkout master
# 更新本地master到远程master分支
git pull remote master:master
# 切回到开发分支
git checkout dev
# Rebase开发分支到最新的master分支
git rebase master

Stash缓冲区命令

# 将当前未提交工作暂存到缓冲区
git stash
# 切换到主干修复问题
git checkout master
 
# 完成主干上的修复工作
 
# 再次切换开发分支
git checkout dev
# 从缓冲区中取出前面的工作
git stash pop

Diff命令

# 显示工作区和暂存区的diff信息
git diff
# 显示暂存区和版本库的diff信息
git diff --cached
# 显示2个提交间的diff信息
git diff commit1 commit2
# 显示2个分支间的diff信息
git diff branch1 branch2
# 显示2个分支指定目录范围的diff信息
git diff branch1 branch2 dir_path
# 显示2个分支指定文件的diff信息
git diff branch1 branch2 file_path
# 加--stat参数,显示diff摘要信息
git diff branch1 branch2 --stat

代码合并

# 切换/创建开发分支
git checkout dev
# 新建文件,加入版本控制
touch readme.md
git add readme.md
# 提交代码到本地仓库
git commit -m 'add readme'
# 推送代码到远程
# -u参数将本地dev分支默认关联到远程origin主机上的dev分支,后续可省略。
git push -u origin dev
# 切换到主干
git checkout main
# 获取主干最新内容
git pull origin master
# 合并开发分支的变更到主干
git merge dev
# 推送主干到远程
git push origin main

拉取远程代码

# 从远程获取代码,并合并到本地工作目录
git pull
# 获取远程仓库的变更到本地仓库,但不合并当代码到当前工作目录
git fetch

远程仓库

# 查看远程仓库
git remote -v
# 添加远程库
git remote add github_project https://github.com/aaronchen2k/ci_test_git.git
# 删除远程仓库
git remote rm github_project
# 推送到指定远程仓库
git push github_project

强制命令

# 强制覆盖远程
git push origin master --force
# 强制覆盖本地
git fetch --all
git reset --hard origin/main
git pull 
# 强制覆盖本地,单行
git fetch --all; git reset --hard origin/main; git pull 


Q: 如何查看和切换Git的本地和远程分支?

A: 使用`git branch`查看本地分支,`git branch -r`查看远程分支,`git checkout `切换分支。


Q: 在Git中如何查看两个分支之间的差异?

A: 可以使用`git diff branch1 branch2`命令来查看两个分支之间的差异。


Q: 如何使用Git命令进行自动化测试集成?

A: 可以结合Git的分支和diff命令维护源码版本,并通过自动化测试框架如ZTF执行测试。

  • Source
评论列表
🏮
风流倜傥的路灯2025-12-07 15:32:08回复
常用命令整理很实用,小白开始get Git探索。👏

推荐阅读

测试开发之自动化篇——自动化测试框架设计

今天,给大家介绍如何进行自动化测试框架的设计。
🍪
陈琦
2022-09-01

测试开发之网络篇-问题定位

我们在测试工作中,时常遇到某个产品网站或服务连不上的问题。借助前面了解的网络相关知识,可以从以下几个视角进行初步的问题排查。 ping网站域名,确认是否是DNS解析的问题; 通过域名访问内网服务时,先确认hosts文件是否配置了域名映射; ping网站IP地址,检查到目标服务器的网络连通性; telnet IP+端口,确认远程服务是否可达; 有条件的去服务器上执行...
aaronchen2k 2021-05-25

测试开发之前端篇-HTML超文本标记语言

前面的文章中,给大家介绍了一个标准HTML页面的组成部分。为更好地掌握这些内容,建议大家阅读HTML标签参考手册,并使用其中的”动手试一试“的功能,直观地体验下这些元素所展示的内容。 HTML是Web自动化测试和网页设计的一个基础,上述教程已经做的很完善,大家阅读一遍,有个基本的了解即可。后续学习中如遇到不明白的地方,可当做手册来查询。Q: 什么是禅道? A: 禅道是一款开源的项目管理软件,...
aaronchen2k 2021-09-03

测试开发之前端篇-浏览器开发者工具使用

Chrome开发者工具是浏览器內置的、用于对网页浏览有关的内容和行为进行查看和调试的工具。可使用快捷键Ctrl + Shift + J ( 在 Mac 上使用 Cmd + Opt + J) 打开,他显示在浏览器的底部,包涵了以下几个Tab的功能。 Console 控制台 用于查看日志和调试JavaScript脚本。以上是百度首页的控制台,大家可以发现开发者用日志的形式打印了一条招聘信息。 在...
aaronchen2k 2021-10-19
返回顶部
客服头像
刘斌
高级客户经理
客服微信
17685869372
526288068
统一服务热线 4006-8899-23
我要提问提问有任何问题,您都可以在这里提问。问题反馈反馈点击这里,让我们聆听您的建议与反馈。