当前位置: 首页 > news >正文

常用git命令

# 设置全局用户名和邮箱
git config --global user.name "Your Name"
git config --global user.email "your@email.com"

#验证是否设置成功 git config --global --list

# 启用颜色输出
git config --global color.ui auto

1.仓库操作

# 初始化本地仓库
git init

# 克隆远程仓库
git clone https://github.com/user/repo.git

# 浅克隆(仅获取最新版本)
git clone --depth=1 https://github.com/user/repo.git


# 添加远程仓库
git remote add origin https://github.com/user/repo.git

# 修改远程仓库地址
git remote set-url origin new-url.git

# 删除远程分支
git push origin --delete old-branch

2.分支管理

# 创建并切换分支
git checkout -b new-feature

# 合并分支(禁用快进)
git merge --no-ff feature

# 交互式变基(修改最近3次提交)
git rebase -i HEAD~3

高级技巧

储藏修改:临时保存未提交的修改

git stash # 储藏当前修改
git stash pop # 应用并删除最新储藏

子模块管理:处理嵌套仓库

git submodule add https://github.com/user/subrepo.git path
git submodule update --init # 初始化子模块

3.提交历史

# 先添加所有文件
git add .

# 或添加特定文件
git add data/data_login.yaml testcases/test_login.py utils/data_loader.py

# 然后再提交
git commit -m "your message"

日志查看

# 图形化分支历史
git log --graph --oneline --all

# 按作者筛选日志
git log --author="Name" --since="2024-01-01"

# 代码变更搜索
git log -S"function_name"


撤销操作

# 撤销工作区修改
git checkout -- file.txt

# 彻底撤销提交(慎用!)
git reset --hard HEAD~1

# 创建反向提交
git revert HEAD

4.远程协作

推送与拉取
# 首次推送主分支
git push -u origin main

# 使用变基方式拉取
git pull --rebase

# 强制推送(需谨慎)
git push origin +feature


同步远程分支
# 跟踪远程分支
git checkout --track origin/remote-branch

# 清理无效远程分支引用
git remote prune origin

最佳实践

  1. 提交规范:遵循约定式提交(如feat: 添加新功能
  2. 分支策略:主分支保护+功能分支开发
  3. 冲突处理
    • 使用git mergetool可视化解决
    • 合并后运行测试确保代码正确性
  4. 性能优化
    • 定期执行git gc清理仓库
    • 使用git clean -fd删除未跟踪文件
http://www.jsqmd.com/news/1133039/

相关文章:

  • 分布式事务补偿:失败后能收场,比强一致更现实
  • 3步彻底解决Windows Defender性能拖慢问题:释放30%系统资源
  • Omniglot Dataset 小样本学习实战:5行代码加载,20-way 1-shot 分类任务搭建
  • 终极指南:用ImageSearch构建千万级本地图片搜索引擎,保护隐私的完美解决方案
  • Figo整体‑集体思维下的人工智能时代社会治理体系研究——基于道家与儒家传统的系统性框架构建
  • 如何快速掌握JPEXS FFDec:Flash逆向工程与SWF分析完整指南
  • SpringBoot RestTemplate
  • AcFunDown:5分钟掌握A站视频离线保存的完整指南
  • 如何3分钟完成Android Studio中文汉化:终极完整界面本地化指南
  • AI画中文为何总像鬼画符?从扩散模型原理到实用解决方案
  • Gemini 3.5 Pro或17日发布、Grok Imagine新增15秒视频生成、GPT-5.6 Sol 跑30小时超Opus | 7月5日 AI日报
  • 14、 多环境部署:test/staging/production
  • PyTorch 2.3.0 环境配置:CUDA 12.4 与 cuDNN 9.2.1 版本兼容性实测与避坑指南
  • Android应用加固实战:从代码混淆到DEX加壳的完整防护方案
  • Adobe-GenP 3.0终极指南:5分钟解锁全系列Adobe专业软件
  • MQTT封装FreeRTOS下WIFI模块下的socket
  • Zotero-Better-Notes:学术笔记管理的终极革命
  • 阴阳师自动化脚本终极指南:解放双手的智能游戏助手
  • 第 21 讲:让 AI 帮你写 CSDN 技术文章的方法
  • Nintendo Switch大气层系统完整指南:从零开始解锁游戏新世界
  • AI SQL 变更闭环:建议生成之后,还要有人负责回滚
  • 数字经济时代:3个技术突破让企业获客效率提升3倍
  • Windows效率革命:PowerToys免费工具集终极指南
  • 无锡干细胞领域发展纪实
  • 2026年免疫细胞存储机构盘点:无锡四家企业技术布局与服务边界观察
  • 《频道选择》二、GridItem使用指南
  • 如何用WeChatMsg打造你的个人社交数据中心:3步掌握聊天数据自主权
  • 海归就业数据拆解:薪资、行业与竞争力重构
  • QKeyMapper:Windows平台按键映射神器,游戏办公两不误
  • 视频孪生重构电力全域管控!黎阳之光打造电厂变电站透明立体安全底座