设为首页 收藏本站
查看: 864|回复: 0

[经验分享] Git 代码管理常用命令

[复制链接]

尚未签到

发表于 2018-1-15 12:42:19 | 显示全部楼层 |阅读模式
  1) 远程仓库相关命令
  检出仓库:$ git clone git://github.com/jquery/jquery.git
  查看远程仓库:$ git remote -v
  添加远程仓库:$ git remote add [name] [url]
  删除远程仓库:$ git remote rm [name]
  修改远程仓库:$ git remote set-url --push[name][newUrl]
  拉取远程仓库:$ git pull [remoteName] [localBranchName]
  推送远程仓库:$ git push [remoteName] [localBranchName]
  2)分支(branch)操作相关命令
  查看本地分支:$ git branch
  查看远程分支:$ git branch -r
  创建本地分支:$ git branch [name] ----注意新分支创建后不会自动切换为当前分支
  切换分支:$ git checkout [name]
  创建新分支并立即切换到新分支:$ git checkout -b [name]
  删除分支:$ git branch -d [name] ---- -d选项只能删除已经参与了合并的分支,对于未有合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项
  合并分支:$ git merge [name] ----将名称为[name]的分支与当前分支合并
  创建远程分支(本地分支push到远程):$ git push origin [name]
  删除远程分支:$ git push origin :heads/[name]
  我从master分支创建了一个issue5560分支,做了一些修改后,使用git push origin master提交,但是显示的结果却是'Everything up-to-date',发生问题的原因是git push origin master 在没有track远程分支的本地分支中默认提交的master分支,因为master分支默认指向了origin master 分支,这里要使用git push origin issue5560:master 就可以把issue5560推送到远程的master分支了。
  如果想把本地的某个分支test提交到远程仓库,并作为远程仓库的master分支,或者作为另外一个名叫test的分支,那么可以这么做。
  $ git push origin test:master         // 提交本地test分支作为远程的master分支 //好像只写这一句,远程的github就会自动创建一个test分支
  $ git push origin test:test              // 提交本地test分支作为远程的test分支
  如果想删除远程的分支呢?类似于上面,如果:左边的分支为空,那么将删除:右边的远程的分支。
  $ git push origin :test              // 刚提交到远程的test将被删除,但是本地还会保存的,不用担心
  3)版本(tag)操作相关命令
  查看版本:$ git tag
  创建版本:$ git tag [name]
  删除版本:$ git tag -d [name]
  查看远程版本:$ git tag -r
  创建远程版本(本地版本push到远程):$ git push origin [name]
  删除远程版本:$ git push origin :refs/tags/[name]
  推送所有tag:  git push origin --tags
  tag迁出branch:
  git checkout tagname
  git checkout -b new_branch_name
  4)git stash暂存相关命令
  git stash: 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。
  git stash pop: 从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。
  git stash list: 显示Git栈内的所有备份,可以利用这个列表来决定从那个地方恢复。
  git stash clear: 清空Git栈。此时使用gitg等图形化工具会发现,原来stash的哪些节点都消失了。
  5)git rebase 使用
  当前分支问题develop,从master拉取最新代码
  git pull --rebase origin master 或者 git rebase develop
  先将develop分支的代码checkout出来,作为工作目录
  然后将master分支从develop分支创建起的所有改变的补丁,依次打上。如果打补丁的过程没问题,rebase就搞定了
  如果打补丁的时候出现了问题,就会提示你处理冲突。处理好了,可以运行git rebase –continue继续直到完成
  如果你不想处理,你还是有两个选择,一个是放弃rebase过程(运行git rebase –abort),另一个是直接用test分支的取代当前分支的(git rebase –skip)。
  6) 工具
  SourceTree & git bash

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-435323-1-1.html 上篇帖子: git rebase与 git合并(error: failed to push some refs to)解决方法 下篇帖子: 我的git 常用指令
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表