git使用技巧汇总(个人常用)
git使用技巧汇总(个人常用)
创建并切换到新分支(此时新分支代码与develop分支代码一致)
代码语言:javascript代码运行次数:0运行复制git checkout -b feature-username-*
将本地分支推送到远程
代码语言:javascript代码运行次数:0运行复制git push origin feature-username-*:feature-username-*
关联远程分支为上游分支
代码语言:javascript代码运行次数:0运行复制git branch --set-upstream-to origin/feature-username-*
编写需求代码……,在提交前进行rebase
操作
git rebase develop
这里也可以选择git merge develop
然后提交代码
代码语言:javascript代码运行次数:0运行复制git push
提交代码后在merge
提交
merge之后就可以删除掉本地创建的新分支
在rebase
的过程中,也许会出现冲突(conflict)。在这种情况,Git会停止rebase
并会让你去解决冲突;在解决完冲突后,用”git add
“命令去更新这些内容的索引(index), 然后,你无需执行 git commit
,只要执行:
git rebase --continue
代码语言:javascript代码运行次数:0运行复制git branch --set-upstream-to origin/develop
这样git会继续应用(apply)余下的补丁。
在任何时候,可以用--abort
参数来终止rebase
的操作,并且”mywork
“ 分支会回到rebase
开始前的状态。
git rebase --abort
一、整体流程的做法
创建并切换到新分支(此时新分支代码与develop分支代码一致)
代码语言:javascript代码运行次数:0运行复制git checkout -b feature-username-*
将本地分支推送到远程并关联远程分支为上游分支
代码语言:javascript代码运行次数:0运行复制git push origin feature-username-*:feature-username-*
编写需求代码……
当代码需要提交时,一定要先merge
一下develop
分支的代码,因为此时新分支feature-username-*
下的其他代码不一定和develop
分支下面的一样,可能在我们编写代码期间develop
还发生过其他merge
,操作方法如下:
将本地分支的上游分支切换为develop
然后拉取代码
代码语言:javascript代码运行次数:0运行复制git pull
拉取代码后如果有冲突及时解决冲突,然后再将上游分支切换为feature-username-*
git branch --set-upstream-to origin/feature-username-*
然后提交代码
代码语言:javascript代码运行次数:0运行复制git push
提交代码后在merge
提交
merge之后就可以删除掉本地创建的新分支
二、一些会用到的命令参考
创建本地新分支
代码语言:javascript代码运行次数:0运行复制git branch feature-username-*
切换到本地刚创建的新分支
代码语言:javascript代码运行次数:0运行复制git checkout feature-username-*
将本地分支推送到远程并关联远程分支为上游分支
代码语言:javascript代码运行次数:0运行复制git push origin feature-username-*:feature-username-*
将本地分支与远程分支关联(确定本地分支的上游分支)
代码语言:javascript代码运行次数:0运行复制git branch --set-upstream-to origin/feature-username-*
本地代码修改后提交
代码语言:javascript代码运行次数:0运行复制git push
删除本地分支
代码语言:javascript代码运行次数:0运行复制git branch -d [branch name]
删除远程分支
代码语言:javascript代码运行次数:0运行复制git push origin :[branch name]
查看远程分支与本地分支的对应关系
代码语言:javascript代码运行次数:0运行复制git remote show origin
移除已经删除但本地还能查看到(git branch -a)的远程分支
代码语言:javascript代码运行次数:0运行复制git remote prune origin
三、其他
git全局配置帐号和密码
代码语言:javascript代码运行次数:0运行复制git config --global "Your ame" git config --global "email@example"
查看工作区状态
代码语言:javascript代码运行次数:0运行复制git status
查看修改
代码语言:javascript代码运行次数:0运行复制git diff "file name"
查看历史提交
代码语言:javascript代码运行次数:0运行复制git log #仅查看重要信息 git log --pretty=oneline
版本回退与恢复
代码语言:javascript代码运行次数:0运行复制#回退/恢复到指定版本
git reset --hard 版本号前几位
#回退到前一版本
git reset --hard HEAD
#回退到前前一版本
git reset --hard HEAD^
#回退到前前前一版本
git reset --hard HEAD^^
#回退到前几版本
git reset --hard HEAD~n
记录每一次git命令
代码语言:javascript代码运行次数:0运行复制git reflog
撤销工作区的修改(撤销同暂存区或者版本库一样,根据之前的操作判断)
代码语言:javascript代码运行次数:0运行复制git checkout -- filename
查看当前版本库与本地文件得不同
代码语言:javascript代码运行次数:0运行复制git diff HEAD -- filename
Git add到暂存区的内容如何回退
代码语言:javascript代码运行次数:0运行复制git reset HEAD filename
使用命令行查看git历史提交图
代码语言:javascript代码运行次数:0运行复制git log --graph --pretty=oneline --abbrev-commit
git储藏当前修改
代码语言:javascript代码运行次数:0运行复制git stash git stash list
#弹出并删除贮藏
git pop
#应用列表内的第几个贮藏
git stash apply number
#删除第几个贮藏
git stash drop number
git复制一个特定的提交到当前分支
代码语言:javascript代码运行次数:0运行复制git cherry-pick 分支号
查看远程分支库信息
代码语言:javascript代码运行次数:0运行复制git remote -v
四、帮助文档
暂时无法在飞书文档外展示此内容
五、子模块的引入和使用
初始化子模块
代码语言:javascript代码运行次数:0运行复制git submodule update --init
#递归初始化子模块(如果子模块还包含子模块)
git submodule update --init --recursive
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024-11-25,如有侵权请联系 cloudcommunity@tencent 删除gitbranch工作技巧推送 #感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
推荐阅读
留言与评论(共有 16 条评论) |
本站网友 新鬼吹灯 | 14分钟前 发表 |
在这种情况 | |
本站网友 鸡骨草煲猪骨 | 8分钟前 发表 |
feature-username-*将本地分支与远程分支关联(确定本地分支的上游分支)代码语言:javascript代码运行次数:0运行复制git branch --set-upstream-to origin/feature-username-*本地代码修改后提交代码语言:javascript代码运行次数:0运行复制git push删除本地分支代码语言:javascript代码运行次数:0运行复制git branch -d [branch name]删除远程分支代码语言:javascript代码运行次数:0运行复制git push origin | |
本站网友 接骨续筋片 | 2分钟前 发表 |
feature-username-*关联远程分支为上游分支代码语言:javascript代码运行次数:0运行复制git branch --set-upstream-to origin/feature-username-*编写需求代码…… | |
本站网友 哄趴 | 9分钟前 发表 |
你无需执行 git commit | |
本站网友 绿洲香岛 | 25分钟前 发表 |
子模块的引入和使用初始化子模块代码语言:javascript代码运行次数:0运行复制git submodule update --init #递归初始化子模块(如果子模块还包含子模块) git submodule update --init --recursive本文参与 腾讯云自媒体同步曝光计划 | |
本站网友 职工技能培训 | 18分钟前 发表 |
根据之前的操作判断)代码语言:javascript代码运行次数:0运行复制git checkout -- filename查看当前版本库与本地文件得不同代码语言:javascript代码运行次数:0运行复制git diff HEAD -- filenameGit add到暂存区的内容如何回退代码语言:javascript代码运行次数:0运行复制git reset HEAD filename使用命令行查看git历史提交图代码语言:javascript代码运行次数:0运行复制git log --graph --pretty=oneline --abbrev-commitgit储藏当前修改代码语言:javascript代码运行次数:0运行复制git stash git stash list #弹出并删除贮藏 git pop #应用列表内的第几个贮藏 git stash apply number #删除第几个贮藏 git stash drop numbergit复制一个特定的提交到当前分支代码语言:javascript代码运行次数:0运行复制git cherry-pick 分支号查看远程分支库信息代码语言:javascript代码运行次数:0运行复制git remote -v四 | |
本站网友 无名指戒指 | 30分钟前 发表 |
代码语言:javascript代码运行次数:0运行复制git rebase --continue代码语言:javascript代码运行次数:0运行复制git branch --set-upstream-to origin/develop这样git会继续应用(apply)余下的补丁 | |
本站网友 沈阳华银大厦 | 1分钟前 发表 |
只要执行 | |
本站网友 影响价格的因素 | 21分钟前 发表 |
然后 | |
本站网友 皓月花园 | 21分钟前 发表 |
原始发表:2024-11-25 | |
本站网友 杭州建筑 | 8分钟前 发表 |
在这种情况 | |
本站网友 贝宁共和国 | 24分钟前 发表 |
feature-username-*关联远程分支为上游分支代码语言:javascript代码运行次数:0运行复制git branch --set-upstream-to origin/feature-username-*编写需求代码…… | |
本站网友 燕园博思 | 7分钟前 发表 |
帮助文档暂时无法在飞书文档外展示此内容五 | |
本站网友 今日美国道琼斯指数 | 19分钟前 发表 |
代码语言:javascript代码运行次数:0运行复制git rebase --continue代码语言:javascript代码运行次数:0运行复制git branch --set-upstream-to origin/develop这样git会继续应用(apply)余下的补丁 | |
本站网友 恒天然事件 | 25分钟前 发表 |
feature-username-*编写需求代码……当代码需要提交时 |