Git常用指令

发布于:2025-07-11 ⋅ 阅读:(18) ⋅ 点赞:(0)

目录

一 提交代码到远程

二.git log

三.git cherry-pick

四.git branch -vv

五.git clean -dfx

六.git clean -ndx  

七.定期同步上游分支

八.误操作后恢复,若合并或变基出错,可通过 git reflog 找回之前的状态:

九.暂存本地修改


一 提交代码到远程

步骤 1:创建新分支
git checkout -b new-feature-branch

步骤 2:更新到最新节点
a # 获取远程最新分支的更新
git fetch origin
b # 合并最新的远程分支到新分支
git merge origin/main(指定分支)

步骤 3:推送代码到远程分支
git push origin new-feature-branch:main


步骤 4:删除本地新分支(可选)
git branch -d new-feature-branch


二.git log


1.log格式化
git log --oneline --format="%h %an: %s"
%h:表示简短的提交哈希值。
%an:代表提交作者的姓名。
%s:是提交说明
1234567 John Doe: Update README file

2.搜索log
git log --oneline | grep "Update"

3.显示文件更改信息
git log -p

4.使用 -n 选项可以指定显示的提交数量,例如只显示最近的 3 次提交:
git log -n 3

5.图形化显示分支历史
git log --graph --oneline

6.按日期筛选
git log --since="2024-04-01" --until="2024-04-15"

7.按作者筛选
git log --author="John Doe"

8.根据hash值查看某一条提交
git log -p 4c937a27838

9.查看其它分支log
git log <分支名>

三.git cherry-pick


1.合并某一次提交
git log <分支名> 获取某次提交得hash值
git cherry-pick 123456789abcdef(某次提交得hash值)
可能遇到的情况及解决办法
冲突解决:如果在合并过程中出现冲突,Git 会暂停操作并提示你解决冲突。你需要手动编辑冲突文件,然后使用 git add 标记冲突已解决,最后使用 git cherry-pick --continue 继续合并操作。
放弃合并:若你想放弃这次合并操作,可以使用 git cherry-pick --abort 命令。

四.git branch -vv


git branch -vv 命令可以显示本地分支和对应的远程跟踪分支的详细信息,包括提交记录的差异。

五.git reset --soft HEAD~
HEAD~1 表示撤销最近的一次提交,若要撤销更早的提交,可调整数字,例如 HEAD~2 撤销最近的两次提交。
git reset --soft HEAD~1

五.git clean -dfx


-d 删除未被跟踪的目录(包括空目录)。若不加此参数,仅删除文件。
-f 强制删除(force
-x 删除所有未被跟踪的文件,包括被 .gitignore 忽略的文件。警告:此参数会删除 .gitignore 中指定的文件(如编译产物、临时文件)
用于彻底清理工作区,移除未被跟踪(untracked)的文件和目录

六.git clean -ndx  


 预览会被删除的文件和目录

七.定期同步上游分支


在开发 feature 分支期间,定期将 main 分支的更新合并到 feature:
git checkout feature
git merge main  

八.误操作后恢复,若合并或变基出错,可通过 git reflog 找回之前的状态:


git reflog  # 查看操作历史
git reset --hard HEAD@{n}  # 回退到第 n 个操作前的状态

九.暂存本地修改


git stash push -m "优化配置修改" frameworks/base/packages/SystemUI 暂存本地路径未提交的修改
git stash list   查看暂存列表
git stash apply stash@{1} 恢复指定暂存(如stash@{1}),但保留在栈中


 


网站公告

今日签到

点亮在社区的每一天
去签到