玩了一天的Git
今天的逗比事
Git从学习到使用,也有2个月时间了,一开始也就看看廖雪峰老师的Git教程,跟着做了一遍,感觉非常受用。
遇到一些忘掉的命令,再回去查查也基本都没问题。
但是今天缺遇到了逗比事,回过头来才发现是git出了问题
背景
我开发的这个模块代码主要是2个分支:master和develop。
合并进master的代码一般都是能够直接上stage测试然后上生产的。
我一般都是在develop分支上工作,偶尔也会新建一个其它的分支。
由于最近新加的功能点比较多,所以develop分支比master超前了好多。
然而今天又要上架新的商品(没有后台,也就是由我来手动生成sql,然后放到测试环境测试),但是测试环境现在放的是develop分支的代码(昨天刚放上去的)。
所以现在就要切换到master分支,然后打包发布到服务器用于新上架商品的测试。
开搞
首先考虑到develop直有在master上添加东西,并没有对原先的东西造成修改,所以理论上使用develop分支也是可以的。
然而把develop分支上代码打包放上去的时候,跑了一下提示 “unknow source”。
这个错误还是认识的,就是不认识这个类。
这里提一下:我们把通用的model类以及接口作为一个单独的maven项目(后面就称作common包),应用层服务层使用maven依赖来得到这些类。
想想不对啊,common项目之前deploy过啊,难道说之前deploy的不是最新版本的?
于是回去再查看了下:
git status
发现没啥可更新的。。。
。。。
然后折腾了半天还是先放弃了,准备切换到master,用master的吧。
至于敲了啥命令,我自己都忘了,总之就是用了checkout 啥啥啥的。
然后再测试api的时候提示出错了:蹦出一个develop上才有的东西,说common中找不到。
然后我就蒙了,明明是master,哪来的新功能。
然后想了半天,真的就是半天,就吃饭去了
找出问题
回来后再想了一下,还是不知道为什么出了这个莫名其妙的问题,于是只好去问带我的人。。。
对,我的问题太奇葩了,他只好自己来打包了。
然后他用了他的电脑打包,就可以了。
看来git上的东西是没用问题的,问题就出在我使用git的姿势。
不过公司的事要紧,今天要上线的商品,先给他弄出sql,测试了,我再去琢磨问题到底出在哪了。
后来想了想,一定是我checkout的时候命令敲错了,master并不是真正的master,而是把在develop上新建了一个叫做master的分支,所以才出现了新的版本。
最后测试环境他们都不用了,我再把develop分支给放上去试试,发现用了checkout的正确姿势以后就这里就没有问题了。
对,其它地方还有问题。嫌我的common版本太老,老问题了。
后来我在eclipse上push了一下,然后想要在这边环境拿一下新的更新的,还是
git status
发现没效果,突然回过神来了,怪不得没效果,应该是git pull嘛。
于是,问题都解决了,跑起来了。。
总结
** git查看本地分支**
git branch
** git查看远程分支**
git branch -r
** git查看所有分支**
git branch -a
** git切换到远程分支**
git checkout -b 本地分支名 远程分支名
** git获取更新**
git pull
玩了一天的Git的更多相关文章
- [少数派]如何学习Git
用玩游戏的方式学习 Git 目录 为什么要学习 Git 怎么学习 Git Learn Git Branching 其他学习资源 用游戏的方式来学习,是一种有趣而高效的方式. 从刚接触电脑时的打字练习软 ...
- git配置多仓库
git配置多仓库 github , gitee , coding , gitlab , gitlab.company ..... 真TM多 . 真TM多 . 真TM多 . 生成ssh 生成ssh 密钥 ...
- Eclipse上传Git远程仓库,并且增加Maven Dependencies
前言: 遇见问题了,公司一台电脑,家里一台电脑,当有项目在进行的时候,又不想把电脑背来背去的,就像一个人玩单机,这个时候GIT就可以帮你解决这个问题.当GIT准备就绪的时候,新的问题来了git下载下载 ...
- 原生ES6写的Web游戏:ES6-Mario,小美女,小帅哥快来玩啊~~
? ES6-Mario 这是一个用原生ES6语法和HTML5新特性写成的Web 游戏. 通过这个项目,你可以在实践中对ES6的主要内容.HTML Canvas 相关API以及Webpack的基础配置有 ...
- git-两小时简单使用教程
两小时学会Git玩转Github 1. 了解Git和Github 1.1什么是Git Git是一个免费.开源的版本控制软件 1.2什么是版本控制系统 版本控制是一种记录一个或若干个文件内容变化,以便将 ...
- git分布式版本控制玩法
git分布式版本控制玩法 Git distributed version control play github的配置安装步骤:1.下载git bash(从http://www.git-scm.com ...
- 2015继续任性——不会Git命令,照样玩转Git
最近事情比较多,一眨眼,已经半个月没有写博客了~不得不感慨光阴似箭啊!当然,2015年有很多让我们期待的事情,比如win10正式版..NET开源.VS2015等等.想想都让人兴奋啊~~ 为了迎接VS2 ...
- 玩转Git入门篇
最近项目使用到Git管理项目,所以就学习了一番,随然网上关于 Git的文章铺天盖地,我还是整理下总结下自己学习Git相关笔记,希望也能帮助到需要他的小伙伴们,O(∩_∩)O~ 简介 Git 是分布式版 ...
- 学习 Git 玩转 GitHub
原文地址:学习 Git 玩转 GitHub 博客地址:http://www.extlight.com 一.基本了解 1.1 什么是版本控制系统 版本控制系统是一种记录一个或若干个文件内容变化,以便将来 ...
随机推荐
- OCP开放封闭原则
一.定义 软件实体(类.模块.函数等)应该是可以扩展的,但是不可修改. 如果正确的应用了OCP原则,那么 以后在进行同样的改动时,就只需要添加新的代码,不必修改已经正常运行的代码. 二.OCP概述 1 ...
- 【C#进阶系列】20 异常和状态管理
异常就是指成员没有完成它的名称所宣示的行动. public class Girl { public string Name { get; set; } } public class Troy{ Gir ...
- 清除svn账户账号密码
1. 2. 3. 4. 5.再次访问时,会弹出要求输入用户名和密码:只是清除记住的用户名和密码.
- 【Java每日一题】20161128
package Nov2016; import java.util.ArrayList; import java.util.List; public class Ques1128 { public s ...
- XE7 iOS 取得系统字型名称
系统字型名称在每个平台的取得方式不尽相同,以下示范如何在 iOS 取得系统内所有字型的名称: uses // 加入下面二个 uses 文件 iOSapi.UIKit, iOSapi.Foundatio ...
- Java中的GOF23(23中设计模式)--------- 单例模式(Singleton)
Java中的GOF23(23中设计模式)--------- 单例模式(Singleton) 在Java这这门语言里面,它的优点在于它本身的可移植性上面,而要做到可移植的话,本身就需要一个中介作为翻译工 ...
- Oracle 免费的数据库--Database 快捷版 11g 安装使用与"SOD框架"对Oracle的CodeFirst支持
一.Oracle XE 数据库与连接工具安装使用 Oracle数据库历来以价格昂贵出名,当然贵有贵的道理,成为一个Oracle DBA也是令人羡慕的事情,如果程序员熟悉Oracle使用也有机会接触到大 ...
- 当struts遇上json,没爱了
用过struts的人,或者用过spring MVC的人,都知道domain model接受参数是多么的方便,而且又有依赖注入,简直是自动拿参数,再自动帮你转成java bean,但是也有不足的地方 说 ...
- 验证:mysql AUTO_INCREMENT 默认值是1
用mongodb时,有些字段需要做自增,而且是用二十进制字母表示(使用a-t对应0-19),做了一个_auto_increment字段用来保存,但是应该从0开始还是从1开始呢? 和mysql保持一致便 ...
- Frameless - 用于预览 iOS8 原型的浏览器
Frameless 是一个用于在 iOS8 中预览产品原型的浏览器.可以可以帮助那些需要一个简单的方法来预览 iOS 设备上的原型设计和开发效果.没有状态栏,通过手势控制浏览器的历史以及键盘的显示. ...