IDEA中项目创建和git常用操作

20221118新增视频教程
http://doc.canglaoshi.org/doc/git/push/push.html
http://doc.canglaoshi.org/doc/git/pull/pull.html

0 参考:动力节点2022idea教程

https://www.bilibili.com/video/BV1y94y1m7Ew?p=27

1 项目创建

idea中的project = Eclipse中的workspace

idea中project里的module = Eclipse中的project

通常idea创建项目的方式:

先创建空的project或者纯java的project(推荐,这种方式创建好project后需要删除该project中的非必要src文件夹),

然后在project中创建module真实项目。

刚才创建的project实际作为一种ws容器,可以存放多个module项目。

1.1 创建project

image-20220614191950683

或者

image-20220614192047169

image-20220614192103367

image-20220614192317055

image-20220614192434253

1.2 创建module

image-20220614192626534

image-20220614192733222

image-20220614192907135

image-20220614193009517

image-20220614193029467

image-20220614193053254

image-20220614193316192

image-20220614194313996

package com.yppah.domain;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @Author: haifei
 * @Date: 2022/6/14 19:39
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {

    private Integer userId;
    private String userName;
    private String address;
}

image-20220614194401259

package com.yppah.controller;

import com.yppah.domain.User;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @Author: haifei
 * @Date: 2022/6/14 19:36
 */
@RestController
@RequestMapping("user")
public class UserController {

    @GetMapping("getOne")
    public User getOne(){
        return new User(1, "tom", "dq");
    }
}

image-20220614194531538

image-20220614194606233

2 idea项目本地git管理

image-20220615132020675

注意:重要文件.gitignore不要删除

里面配置了项目中忽略上传的目录,比如编译得到的target文件夹等,不会被git管理

image-20220615132256623


image-20220615132849816

image-20220615132908392

image-20220615134710550

红色文件:本地存在,但本地暂存区和本地版本库中没有

绿色文件:本地暂存区有了

正常颜色文件:本地版本库有了

加入暂存区:

image-20220615133110613

提交到本地版本库:

image-20220615133334323

image-20220615133543389

image-20220615133638354


上述提交成功。

比如说此时又新建了一个类,那么它就是红色文件。

可以点击add直接交给git管理放入本地暂存区,也可以参考上述后续手动add。

image-20220615134013612

加入暂存区

image-20220615134240397

加入版本库

image-20220615134354226

image-20220615134505633

image-20220615134603827

3 idea-git远程操作

image-20220615140647065

背景:某开发小组共有两人,组长小海,组员大飞

应用场景如下:

3.1 组长使用git提交代码到gitee远程仓库

创建远程仓库

image-20220615140311539

image-20220615140447422

image-20220615140536935

本地版本库代码提交到远程gitee仓库

image-20220615140736639

image-20220615140819921

image-20220615140919558

image-20220615141106946

image-20220615141139150

image-20220615141248813

3.2 组员从远程仓库获取项目源码

image-20220615144007681

image-20220615144042496

image-20220615144152556

image-20220615144205544

image-20220615144420087

3.3 组员修改了部分源码,提交到远程仓库

image-20220615144453870

PS:是animal

提交到组员本地的暂存区

image-20220615144615414

提交到组员本地的版本库

image-20220615144724843

image-20220615144833863

组员提交自己的本地版本库代码到远程仓库

image-20220615144954068

image-20220615145020114

image-20220615145029382

image-20220615145100183

3.4 组长从远程仓库获取组员的提交

再次打开刚刚组长创建的项目

image-20220615145239684

image-20220615145426454


image-20220615150025965

image-20220615150114005

image-20220615150140536

3.5 组员接收任务:创建一个新分支并在该分支上开发

组员在自己本地创建dev分支

image-20220615150353806

image-20220615150422211

image-20220615150524043

组员在dev分支上进行开发

image-20220615150644060

package com.yppah.domain;

/**
 * @Author: haifei
 * @Date: 2022/6/15 15:06
 */
public class Hello {
    public static void main(String[] args) {
        System.out.println("这是组员开发的新功能");
    }
}

image-20220615151040351

image-20220615151152094

image-20220615151508428

此时,Hello类只存在于组员本地dev分支的版本库中,主分支中并没有,远程仓库中也没有


检验如下:

image-20220615151717214

image-20220615151858804

image-20220615152344737

再切换为dev分支

image-20220615152439547

image-20220615152455111

3.6 组员把分支提交到远程仓库

image-20220615155958595

image-20220615160036044

image-20220615160053830

image-20220615160145595

image-20220615160208458

image-20220615160230388

3.7 组长获取组员提交的分支

image-20220615160623754

image-20220615161208333

image-20220615161740165

image-20220615161809889

image-20220615162005671


但是,此时切换到master主干分支,Hello类又不见了

image-20220615162144836

image-20220615162209594

3.8 组长把分支合并到主干

组员开发的新功能体验较好,组长决定把该功能合并到主干上

在master分支下,选择merge changes

image-20220615162558142

image-20220615162726693

image-20220615162754654

但此时,仅仅是组长本地库中合并了组员的dev分支

需要重新提交合并后的master分支到远程仓库

image-20220615162931075

image-20220615163038895

image-20220615163058727

image-20220615163108349

image-20220615163133807

3.9 项目要发版,组长打tag标签

本地创建tag

image-20220615163337310

image-20220615163405779

提交到远程仓库

image-20220615163510531

image-20220615163531854

image-20220615163545054

image-20220615163628019

image-20220615163735493

image-20220615164120284

image-20220615164335757

3.10 git-bash命令行方式将本地项目推送至远程仓库


image
image
image
image

posted @   yub4by  阅读(241)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示