文章目录
- 作用:将当前分支的提交推送到远程对应的分支。 适用场景:日常开发中推送已提交的更改。 前提条件:本地分支已设置追踪关系(tracking)。 git push
- 作用:将本地分支推送到指定的远程分支。 适用场景:首次推送新分支或推送到非默认远程分支。 git push origin dev
- 作用:推送分支并设置默认远程追踪分支,后续可直接使用 git push。 适用场景:创建新分支后首次推送,希望简化后续操作。 git push -u origin feature/login
- 作用:忽略远程提交历史,强制用本地提交覆盖远程分支。 适用场景:本地修改了历史提交(如 rebase、 amend),需要同步远程。 注意:慎用!可能丢失他人提交内容。 git push –force
- 作用:只有当远程分支未被其他人更新时才允许强制推送。 适用场景:避免因他人提交导致的数据丢失,推荐代替 –force 使用。 git push –force-with-lease
- 作用:将本地所有标签推送到远程仓库。 适用场景:发布版本打 tag 后,需同步到远程。 git push origin –tags
- 作用:将本地某个分支推送到远程另一个名称的分支。 适用场景:本地分支名与远程不一致,或想重命名远程分支。 git push origin feature/login:dev
目录
- 引言
- 一、常见推送代码方式详解
- 1. git push:默认推送当前分支到远程跟踪分支
- 示例:
- 2. git push origin <branch>:指定远程分支推送
- 示例:
- 3. git push -u origin <branch>:设置默认追踪并推送
- 示例:
- 4. git push –force 或 git push -f:强制推送(覆盖远程)
- 示例:
- 5. git push –force-with-lease:安全强制推送
- 示例:
- 6. git push origin –tags:推送所有标签
- 示例:
- 7. git push origin <local-branch>:<remote-branch>:推送本地分支到远程不同名分支
- 示例:
- 推送方式总结表格
- 使用建议
在 Git 中,推送代码(即将本地提交推送到远程仓库)有多种方式,每种方式适用于不同的协作场景和需求。以下是几种常见的推送代码的方式、结合完整示例说明,并以表格形式总结对比。
- 作用:将当前分支的提交推送到远程对应的分支。
- 适用场景:日常开发中推送已提交的更改。
- 前提条件:本地分支已设置追踪关系(tracking)。
git push
git checkout main
git add .
git commit -m "Update README"
git push
- 作用:将本地分支推送到指定的远程分支。
- 适用场景:首次推送新分支或推送到非默认远程分支。
git push origin dev
git checkout -b feature/login
git add .
git commit -m "Add login page"
git push origin feature/login
- 作用:推送分支并设置默认远程追踪分支,后续可直接使用
git push。
- 适用场景:创建新分支后首次推送,希望简化后续操作。
git push -u origin feature/login
git push。
git checkout -b feature/register
git add .
git commit -m "Add register page"
git push -u origin feature/register
之后只需执行:
git push
即可推送该分支。
- 作用:忽略远程提交历史,强制用本地提交覆盖远程分支。
- 适用场景:本地修改了历史提交(如 rebase、 amend),需要同步远程。
- 注意:慎用!可能丢失他人提交内容。
git push --force
git rebase main
git push --force
- 作用:只有当远程分支未被其他人更新时才允许强制推送。
- 适用场景:避免因他人提交导致的数据丢失,推荐代替
--force 使用。
git push --force-with-lease
--force 使用。
git rebase main
git push --force-with-lease
- 作用:将本地所有标签推送到远程仓库。
- 适用场景:发布版本打 tag 后,需同步到远程。
git push origin --tags
git tag v1.0.0
git push origin v1.0.0
或一次性推送所有标签:
git push origin --tags
- 作用:将本地某个分支推送到远程另一个名称的分支。
- 适用场景:本地分支名与远程不一致,或想重命名远程分支。
git push origin feature/login:dev
git checkout feature/login
git push origin feature/login:dev
| 推送方式 | 是否自动追踪 | 是否覆盖远程 | 是否安全 | 推荐使用场景 |
|---|---|---|---|---|
| git push | ✅(需已设置) | ❌ | ✅ | 日常推送已有分支 |
| git push origin <branch> | ❌ | ❌ | ✅ | 首次推送或指定远程分支 |
| git push -u origin <branch> | ✅ | ❌ | ✅ | 新分支首次推送并设置默认追踪 |
| git push –force | ❌ | ✅ | ❌ | 强制覆盖远程(慎用) |
| git push –force-with-lease | ❌ | ✅ | ✅ | 安全强制推送,防止误覆盖他人提交 |
| git push origin –tags | ❌ | ❌ | ✅ | 推送所有标签 |
| git push origin <local>:<remote> | ❌ | ❌ | ✅ | 推送本地分支到远程不同名分支 |
- 普通开发流程:使用
git push 或 git push origin <branch> 即可。
- 新分支首次推送:推荐使用
git push -u origin <branch> 设置默认追踪。
- 强制推送:优先使用
--force-with-lease 替代 --force。
- 版本发布:使用
git tag 打标签并通过 git push origin --tags 推送。
git push 或 git push origin <branch> 即可。git push -u origin <branch> 设置默认追踪。--force-with-lease 替代 --force。git tag 打标签并通过 git push origin --tags 推送。到此这篇关于Git推送代码的7种高效方式的文章就介绍到这了,更多相关Git推送代码内容请搜索风君子博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持风君子博客!
您可能感兴趣的文章:
- shell脚本一键同时推送代码至github和gitee的解决办法
- Git中代码回退的完全指南
- Git拉取代码的六种高效方式
- Python实现自动化GIT提交的示例代码
- GIT统计代码提交次数和行数方式
- IDEA实现回退提交的git代码(四种常见场景)