技术笔记 - 常用Git命令
864 字
4 分钟
技术笔记 - 常用Git命令
Git配置相关
- 配置全局用户名和邮箱
git config --global user.name "<Your Name>"git config --global user.email "<your@example.com>"仓库初始化与克隆
- 初始化本地仓库
git init- 克隆远程仓库
git clone <remote-repo-url>- 克隆远程仓库到指定目录
git clone <remote-repo-url> <local-directory>基础工作流
- 查看工作区状态
git status- 添加文件到暂存区
git add <file>- 提交变更
git commit -m "<Commit message>"- 查看提交历史
git log- 查看提交历史(简洁图形化格式)
git log --oneline --graph --decorate --all- 查看所有分支操作记录
git reflog分支管理
- 查看分支
git branch # 查看本地分支git branch -r # 查看远程分支git branch -a # 查看所有分支(本地+远程)- 创建并切换新分支
git checkout -b <new-branch-name>- 切换到已存在分支
git checkout <branch-name>- 合并分支
git merge <branch-name>git merge --no-ff <branch-name> # 禁用Fast Forward合并,保留合并提交- 删除分支
git branch -d <branch-name> # 安全删除已合并分支git branch -D <branch-name> # 强制删除未合并分支- 重命名分支
git branch -m <old-branch-name> <new-branch-name>远程仓库操作
- 查看远程仓库信息
git remote -v- 添加远程仓库
git remote add origin <remote-repo-url>- 推送
git push -u origin <branch-name> # 首次推送需加-u建立关联git push # 后续推送直接使用git push origin <branch-name> # 推送指定分支到远程仓库- 拉取
git pull # 拉取并自动合并(相当于fetch+merge)git fetch origin # 仅拉取不合并(安全)git fetch --prune # 同步远程已删除的分支- 追踪远程分支
git checkout -b local-branch origin/remote-branch撤销与回退
- 工作区撤销(未add)
git checkout -- <filename> # 撤销工作区修改git checkout -- . # 撤销所有未add的变更- 暂存区撤销(已add未commit)
git reset HEAD <filename> # 撤销暂存区修改git reset HEAD . # 撤销所有暂存区修改- 回退版本(已commit未push)
git reset --soft HEAD~<n> # 回退n个版本,保留变更git reset --mixed HEAD~<n> # 默认,回退n个版本并清空暂存区git reset --hard HEAD~<n> # 彻底回退n个版本(危险,会丢失修改)- 回退到指定版本
git reset --hard <commit-hash>- 远程回退(已push)
git revert <commit-hash> # 生成新提交抵消旧提交(保留变更历史,安全)标签管理(版本发布)
- 创建标签
git tag <tag-name> # 当前提交标注标签git tag <tag-name> <commit-hash> # 指定提交标注标签git tag -a <tag-name> -m "<message>" # 创建附注标签(带注释信息)- 查看标签
git tag # 查看所有标签git show <tag-name> # 查看标签详情- 推送标签
git push origin <tag-name> # 推送指定标签到远程仓库git push origin --tags # 推送所有标签到远程仓库- 删除标签
git tag -d <tag-name> # 删除本地标签git push origin --delete <tag-name> # 删除远程标签高阶技巧
- 暂存当前工作
git stash # 暂存当前工作git stash list # 查看stash列表git stash apply # 恢复最近stash(不删除)git stash pop # 恢复并删除最近stashgit stash drop stash@{0} # 删除指定stash- 交互式添加(分块提交)
git add -p # 按块选择要添加的内容- 查看某行代码最后提交者
git blame <filename> -L <line-number>,<line-number>- 查找提交
git log --grep="<关键词>" # 按提交信息搜索git log -S "<代码内容>" # 按代码变动搜索- 清理无效文件
git clean -fd # 删除未跟踪的文件和目录(危险)支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!
技术笔记 - 常用Git命令
https://blog.xshan.top/posts/git-command/ 相关文章 智能推荐
1
技术笔记 - 拉取上游仓库且解决冲突
技术笔记 记录笔者第一次拉取上游仓库更新且解决冲突的经历
2
近期TRAE社区贡献荣誉
贡献荣誉 混水摸鱼3个月也获得了不少的称号和徽章,认识了不少朋友,特此在这里记录一下获取的荣誉
3
从零开始用CNB云部署ComfyUI绘图
技术笔记 使用腾讯云CNB平台每月免费额度部署云端ComfyUI进行AI绘图体验
4
技术笔记 - 手把手部署照片博客
技术笔记 从零开始免费部署一个属于自己的照片博客
5
精华丨GLM-5.1丨一次完美的项目重构全流程剖析案例
TRAE 距离GLM-5.1正式发布已经过去了10天,官方之前宣称能够连续8小时的任务也一直没有去试验,一直扎在SOLO 3.0中研究,昨晚突然心血来潮想要重构我的[导航站](https://nav.xshan.top/),它是一个开源项目但因为很早以前就被我截断关联,一直以来也没有进行改善,所以我在想GLM-5.1大家都在拥护它的强度,那么它能不能完成整套系统的重构(包含前后端),所以这个案例就由此诞生了。
随机文章 随机推荐