前端见微知著番外篇:GIT舍我其谁?
在上一篇中,我们讲到了利用纯UI的软件如何实现代码的提交。但是在MAC机器上,是没有turtoiseGit这类软件的,所以利用命令行的方式就是我们的首选了。
下面我们来描述两种主要的Git使用场景:
场景一:在Git上有许多的开源系统,假如我想参与到开源软件的源码修改或者功能扩展中,利用Git的话,我们该如何做呢?
场景二:公司的代码寄托在Bitbucket上,并且针对开发团队新建了一个innovation_foundations_client的分支,开发团队需要提交代码给上级成员审核通过后,代码才能合并进去,该如何做?
其实这两种场景都可以利用如下的Git流程进行搞定。
第一步
在bitbucket中,打开项目所在的地址,利用git clone命令将代码复制到本地。这样我们在本地就创建了origin主分支。
git clone git@bitbucket.org:livemocha/advanced-english.git
第二步
我们需要建立本地与bitbucket上的代码的关联,并更新本地代码:
git fetch origin
第三步
我们去拿innovation_foundations_client分支上的代码,并对本地代码进行更新:
git checkout innovation_foundations_client
第四步
我们创建待提交的feature:
git checkout -b feature/SOMEDESCRIPTIVENAME
第五步
然后我们就可以对我们的项目进行任意的更改了,更改完毕以后,我们可以利用git status来跟踪哪些文件做了改变,对于这些改变的文件,我们可以利用git add命令将其包含到跟踪目录中。
git add, git rm -f 等等
第六步
当利用git status命令查看所做的更改都包含进来后,那么我们可以提交了:
git commit -m "SOME GOOD MESSAGE"
第七步
提交完毕以后,那么我们将其推送到远程服务器上:
git push origin feature/SOMEDESCRIPTIVENAME
注意这个feature的名称应该和之前创建的保持一致。
第八步
最后,你去bitbucket上,点击Create pull request菜单项,然后在左面选中你的feature,右面选择innovation_foundations_client,填写上comment,指定好reviewers,就可以提交了。
提交完毕以后,就可以在Pull requests菜单项中,看到自己提交的待审核的内容了。
其他
有时候,我们的本地代码没有及时更新,当我们需要更新的时候,我们可以运行 :
git pull origin master
那么就可以将远程的master主分支内容更新到本地,或者运行
git pull origin innovation_foundations_client
同样也可以将innovation_foundations_client子分支内容更新到本地。
这个需要根据项目情况而定来更新哪个,有时候两个都需要做的。
前端见微知著番外篇:GIT舍我其谁?的更多相关文章
- 前端见微知著番外篇:Bitbucket进行代码管控
说道代码管控,一般都会提到TFS.Git等,但是在这里我们将要用到Bitbucket,其实其操作方式和Git基本上一样,但是和TFS则有很大的不同了.但是原理基本上都是一致的. 这里我不会过多的涉及到 ...
- 渗透测试思路 - CTF(番外篇)
渗透测试思路 Another:影子 (主要记录一下平时渗透的一些小流程和一些小经验) CTF(番外篇) 笔者是一个WEB狗,更多的是做一些WEB类型题目,只能怪笔者太菜,哭~~ 前言 本篇 ...
- 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV
这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...
- python自动化测试应用-番外篇--接口测试1
篇1 book-python-auto-test-番外篇--接口测试1 --lamecho辣么丑 1.1概要 大家好! 我是lamecho(辣么丑),至今<安卓a ...
- 知识图谱实战开发案例剖析-番外篇(1)- Neo4j是否支持按照边权重加粗和大数量展示
一.前言 本文是<知识图谱实战开发案例完全剖析>系列文章和网易云视频课程的番外篇,主要记录学员在知识图谱等相关内容的学习 过程中,提出的共性问题进行展开讨论.该部分内容原始内容记录在网易云 ...
- [uboot] (番外篇)uboot之fdt介绍
http://blog.csdn.net/ooonebook/article/details/53206623 以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为 ...
- Java微信公众平台开发--番外篇,对GlobalConstants文件的补充
转自:http://www.cuiyongzhi.com/post/63.html 之前发过一个[微信开发]系列性的文章,也引来了不少朋友观看和点评交流,可能我在写文章时有所疏忽,对部分文件给出的不是 ...
- [uboot] (番外篇)uboot之fdt介绍 (转)
以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为例 [uboot] uboot流程系列:[project X] tiny210(s5pv210)上电启动流程(B ...
随机推荐
- yii2 如何在页面底部加载css和js
作者:白狼 出处:www.manks.top/article/yii2_load_js_css_in_end 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接 ...
- == 与 equals 区别
同: ==和equals都比较两个值是否相等.相等为true 否则为false: 异: 1. == 是一个运算符;equals则是string对象的方法,可以.(点)出来. ...
- 网络编程2--毕向东java基础教程视频学习笔记
Day 23 08 Udp接收端09 Udp键盘录入数据方式10 Udp聊天11 TCP传输12 TCP传输213 TCP练习14 TCP复制文件 08 Udp接收端 需求:定义一个应用程序,用于接收 ...
- CSRF攻击与防御
CSRF是什么 CSRF在百度百科中是这么说的:“CSRF(Cross-site request forgery跨站请求伪造,也被称为“one click attack”或者session ridin ...
- mysql源码解读之事务提交过程(一)
mysql是一种关系型数据库,关系型数据库一个重要的特性就是支持事务,这是区别于no-sql产品的一个核心特性.当然了,no-sql产品支持键值查询,不能支持sql语句,这也是一个区别.今天主要讨论下 ...
- Javascript之旅——第七站:说说js的调试
最近比较吐槽,大家都知道,现在web前端相对几年前来说已经变得很重了,各种js框架,各种面对对象,而且项目多了,就会提取公共模块, 这些模块的UI展示都一样,不一样的就是后台逻辑,举个例子吧,我们做企 ...
- MySql安装与MySQL添加用户、删除用户与授权
1.安装MySql 目前MySQL有两种形式的文件,一个是msi格式,一个是zip格式的.msi格式的直接点击setup.exe就好,按照步骤进行.但是很多人下了zip格式的解压发现没有s ...
- 数据库 SQL Server 到 MySQL 迁移方法总结
最近接手一起老项目数据库 SQL Server 到 MySQL 的迁移.因此迁移前进行了一些调查和总结.下面是一些 SQL Server 到 MySQL 的迁移方法. 1. 使用 SQLyog 迁移 ...
- mysql 动态新建以及删除分区表
因为项目需要,最近研究了一下在mysql数据库下如何动态新建以及删除分区表.如果全部借助存储过程的话,新建以及删除分区表在逻辑上比较死板.不灵活,而且还容易出错.因此,我新建了一个数据表table_f ...
- Tomcat源码分析之—具体启动流程分析
从Tomcat启动调用栈可知,Bootstrap类的main方法为整个Tomcat的入口,在init初始化Bootstrap类的时候为设置Catalina的工作路径也就是Catalina_HOME信息 ...