无需登录 数据私有 本地保存

Git 命令交互式速查 - 按工作流筛选命令

28
0
0
0

Git 交互式速查

按工作流筛选命令,快速查找你需要的 Git 操作

0 条命令

没有匹配的命令,试试其他关键词或筛选条件

常见 Git 问题

使用 git reset --soft HEAD~1。这会将 HEAD 指针回退一次提交,但保留所有更改在暂存区中,你可以修改后重新提交。--soft 参数确保工作目录和暂存区不受影响。如果只想回退提交但把更改放回工作目录(取消暂存),使用 git reset HEAD~1(默认 --mixed)。

git fetch 仅从远程仓库下载最新的提交和引用,不会自动合并到当前分支,安全且不会影响本地工作。git pull = git fetch + git merge(或 rebase),会直接尝试合并远程更改。推荐在不确定时先用 git fetch 查看变化,再决定合并策略。

使用交互式变基:git rebase -i HEAD~N(N 为要合并的提交数量)。在打开的编辑器中,将除第一个外的所有提交的 pick 改为 squash(或 s),保存后会让你编辑合并后的提交信息。注意:如果这些提交已经推送到远程,需要使用 git push --force(谨慎操作)。

当合并出现冲突时:1) 运行 git status 查看冲突文件。2) 打开冲突文件,找到 <<<<<<<>>>>>>> 标记的区域。3) 手动编辑解决冲突,删除标记符号。4) 使用 git add <文件> 标记为已解决。5) 最后执行 git commit 完成合并。也可以使用 git mergetool 调用可视化工具辅助。

使用 git push origin --delete <分支名> 或简写 git push origin :<分支名>。删除后,其他协作者需要运行 git fetch --prune 来清理本地过期的远程分支引用。同时记得删除本地对应分支:git branch -d <分支名>

git stash 临时保存当前工作目录的更改,让工作区恢复干净。常用场景:需要切换分支但不想提交当前进度。恢复方法:git stash pop(恢复并删除 stash)或 git stash apply(恢复但保留 stash)。查看所有 stash:git stash list。应用特定 stash:git stash apply stash@{2}

git rebase 将当前分支的提交"移植"到目标分支的最新提交之上,产生线性历史。适合在个人分支上保持整洁的提交历史。与 merge 的区别:rebase 重写历史(更干净),merge 保留分支拓扑(更安全)。黄金法则:不要对已推送到公共仓库的提交进行 rebase。常用:git rebase main 将当前分支变基到 main 上。

使用 git log -p <文件名> 查看该文件的详细提交历史及每次的 diff。使用 git blame <文件名> 查看文件每一行的最后修改者和提交信息。使用 git log --follow <文件名> 可以追踪文件重命名前后的完整历史。

提示:点击命令右侧的 按钮即可复制命令,粘贴到终端使用