11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本



1 执行以下案例:

某研发团队2011年初开发了一款名为Apollo的信息系统,目前已发布v1.0版本。此项目初期已有部分基础代码

研发团队再此基础代码上经过3个月的努力发布了一个功能相对完备的Apollo 1.0版本进行销售

 

由于销售业绩良好,因此研发团队正在着手v2.0版本的开发工作

 

但就在这个时候,有客户发现v1.0软件系统一严重bug,如不及时修复将造成严重后果

 

研发团队收到bug报告后立刻安排部分研发人员对v1.0版本进行修复,但其他研发人员则继续开发v2.0版本的新功能

 

修复bug的研发人员很快扎到问题原因并对问题代码进行了修复,很快发布了v1.1版本发给了客户,因此没有造成重大损失

 

Bug修复后研发人员将修复后的代码整合到研发主线中来,这样就可以保证今后发布的后续版本不会再出现此问题

 

就这样研发团队在大家的共同努力下工作有条不紊的进行

2 创建一个Apollo的仓库

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

3 Eclipse连接到这个库

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

点击”Finish”

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

右击,导入工程:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

然后在张三里面创建一个User.java

public class User {

    private String name;

    private int age;

   

    public String getName() {

       return name;

    }

   

    public void setName(String name) {

       this.name = name;

    }

   

    public int getAge() {

       return age;

    }

   

    public void setAge(int age) {

       this.name = name;

    }

}

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

接着Commit and Push

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

4 再克隆一个库,名称为李四(表示供李四使用)

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

然后import project

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

点击下一步,出现以下错误:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

上面的窗口说明有一个.project文件存在于”E:\software\developer\lisi”.这时候解决办法是将lisi这个文件夹里面的.project文件删除,然后再“Back”一下,

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

删除上面的.project,点击back按钮之后再点击”Next”,发现:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

然后点击”Finish”

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

5 接着在张三的基础上发布一个版本。再次之前请先将张三这个版本中的内容commit and push

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

接下来开始设置版本,也就是说创建Tag

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

创建Tag V1.0

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

点击Create Tag

这时候到Git视图,发现如下:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

6 lisi中,右击项目,先pull一下,这时候先在lisi中添加一个字段,这时候User.java中的代码如下:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本


public class User {

    private String name;

    private int age;

    private String xiaosan;

   

    public String getName() {

       return name;

    }

   

    public void setName(String name) {

       this.name = name;

    }

   

    public int getAge() {

       return age;

    }

   

    public void setAge(int age) {

       this.name = name;

    }

   

    public void setXiaoSan(String xiaosan) {

       this.xiaosan = xiaosan;

    }

 

    public String getXiaoSan() {

       return xiaosan;

    }

}

接着将lisi Commit and Push到远程服务器上:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本


要确保lisi的代码push了,要点击lisi Commit and Push:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

接下来zhangsan pull下远程服务器上的代码:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

7 接下来在zhangsan的基础上,转到pull之前的版本,也就是Tag V1.0的版本上,进行修改。这时候要将zhangsan切换到Tag V1.0版本。

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本



这时候要想修改Tag V1.0版本的内容,需要在TagV1.0的版本的基础上创建一个分支,在这个分支的基础上修改代码。

创建分支的方法是:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

注意,如果选中上面的”Checkout new branch”后,这时候再次点击Finish之后,它会直接将V1.0这个分支切换到V1.0_fixup上,这时候发现项目右侧会显示v1.0_fixup,这时候发现项目的右侧会显示V1.0_fixup

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

再次进入Git视图,展开zhangsan—Local,发现下面有两个分支了。

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

8 接下来,回到Java视图,在zhangsanUser.java中就可以在v1.0_fixup分支中开始修改这个TagV1.0版本

这时候再次查看zhangsan中的User.java如下:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

修改User的内容:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

接着Commit and Push项目:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

这时候再次创建一个Tag版本,发布一个版本供用户使用。右击项目:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

9 这时候再到Git视图,展开zhangsan---Tag发现列了另外一个Tag

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

这时候V1.1拿过来之后就可以发布给客户了。

Zhangsan从当前的Tag版本回来的方式:

右击项目

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

这时候User.java的内容如下:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

整合几个版本,方式是:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

点击Merge

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

这时候再看User.java,如下:

合并之后,右击项目Commit and Push,选择master

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

点击Commit and Push

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

这时候lisi这个用户再pull,查看到User.java的内容如下:

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本 

11_Eclipse中演示Git版本的创建,历史版本的修改,创建分支,合并历史版本和当前版本

上一篇:SVN早期版本库历史的删除


下一篇:linux中Shell历史命令记录文件的路径是什么