git常见场景命令

一、合并

需求:develop 分支的代码合并到 master 分支 ,在执行合并前,安全地验证我是否具备向 master 分支推送(push)的权限,避免因权限不足导致操作失败或影响主干代码。

步骤:

第 1 步:确保本地 master 是干净的

1、在 PyCharm 右下角点击当前分支名(如 develop)→ 选择 origin/master → 点击 "Checkout " (这会创建并切换到本地 master,与远程一致)

2、如果提示 .idea/ 冲突:

a、完全退出 PyCharm

b、用系统终端(PowerShell/Terminal)删除冲突目录:

进入你的项目目录

cd D:\path\to\xxx # 替换为你的实际路径

彻底删除可能冲突的 .idea 目录

Remove-Item -Recurse -Force xxx\.idea\

获取最新远程信息

git fetch origin

强制重置本地 master 到远程状态(确保干净)

git checkout master git reset --hard origin/master

3、如果未提示 .idea/ 冲突,则继续系统终端命令。

第 2 步:不要合并!直接测试推送权限

1、创建一个"空提交"(关键!):

git commit --allow-empty -m "TEST: check push permission to master"

你会看到类似:[master abc1234] TEST: ... 的输出,这表示本地已有一个新提交。

2、尝试推送到远程:

master git push origin master

如果有权限:

输出类似 To https://... + [new branch]Everything up-to-date,说明你可以直接 push 到 master(但依然建议走 PR!)

如果没有权限:

报错如:

remote: Permission denied fatal: unable to access '...': The requested URL returned error: 403

ERROR: You need push rights to do that.

相关推荐
_道隐_1 小时前
git stash如何pop指定的stash change?
git
PC2005-cloud3 小时前
Git学习笔记:GitHub Git Data API 完全指南,用 Go 操控 Git 底层对象
笔记·git·学习
Python私教18 小时前
AI 并行编码的 Worktree 生命周期:创建、隔离与安全回收
人工智能·git
互联网中的一颗神经元19 小时前
16 — 改写历史 rebase:搬家到新楼层,不是合并
git
互联网中的一颗神经元1 天前
19 — 贮藏与清理:stash 是抽屉,gc 是打包箱
git
用户330144867631 天前
20 — 远程进阶:强制推送的保险绳——force-with-lease
git
Cooper251 天前
别急着改 Git 历史:rebase、cherry-pick、bisect 与 reflog 的安全操作顺序
git
刚入门的大一新生1 天前
Linux-版本控制器Git
git
扶苏10021 天前
同一个 Git 项目整出两份,切分支互不影响?两种方案实测
大数据·git·elasticsearch
ZJU_统一阿萨姆1 天前
【Git】Github 开源许可证详解
git·开源·github