首页 > 其他分享 >Git 02: git管理码云代码仓库 + IDEA集成使用git

Git 02: git管理码云代码仓库 + IDEA集成使用git

时间:2022-10-29 17:26:15浏览次数:62  
标签:02 文件 git 仓库 IDEA Git branch 分支

Git项目搭建

创建工作目录与常用指令

工作目录(WorkSpace)一般就是你希望Git帮助你管理的文件夹,可以是你项目的目录,也可以是一个空目录,建议不要有中文。

日常使用只要记住下图6个命令:

image

本地仓库搭建

创建本地仓库的方法有两种:一种是创建全新的仓库,另一种是克隆远程仓库。

创建全新的仓库,需要用GIT管理的项目的根目录执行

# 在当前目录新建一个Git代码库
$ git init

执行后可以看到,仅仅在项目目录多出了一个.git目录,关于版本等的所有信息都在这个目录里面

克隆远程仓库

另一种方式是克隆远程目录,是将远程服务器上的仓库完全镜像一份至本地

# 克隆一个项目和它的整个代码历史(版本信息)
$ git clone [url]  # https://gitee.com/xun-study/xun-share.git

Git文件操作

文件的四种状态

版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上。

  • Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged.
  • Unmodify: 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件
  • Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态, 使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改 !
  • Staged: 暂存状态. 执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态. 执行git reset HEAD filename取消暂存, 文件状态为Modified

查看文件状态

上面说文件有4种状态,通过如下命令可以查看到文件的状态

#查看指定文件状态
git status [filename]

#查看所有文件状态
git status

# git add .                  添加所有文件到暂存区
# git commit -m "消息内容"    提交暂存区中的内容到本地仓库 -m 提交信息

忽略文件

有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等

在主目录下建立".gitignore"文件,此文件有如下规则

  • 忽略文件中的空行或以井号(#)开始的行将会被忽略。
  • 可以使用Linux通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号([abc])代表可选字符范围,大括号({string1,string2,...})代表可选的字符串等。
  • 如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。
  • 如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略。
  • 如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略)。
#为注释
*.txt        #忽略所有 .txt结尾的文件,这样的话上传就不会被选中!
!lib.txt     #但lib.txt除外
/temp        #仅忽略项目根目录下的TODO文件,不包括其它目录temp
build/       #忽略build/目录下的所有文件
doc/*.txt    #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

使用码云

  • 注册登录码云,完善个人信息

  • 设置本机绑定SSH公钥,实现免密码登录!(免密码登录,这一步挺重要的,码云是远程仓库,我们是平时工作在本地仓库!)

    # 进入 C:\Users\Administrator\.ssh 目录
    # 生成公钥
    ssh-keygen
    

    image

  • 将公钥信息public key 添加到码云账户中即可!

    image

  • 使用码云创建一个自己的仓库

    image

  • 获取url

    image

  • 克隆到本地

    image

IDEA中集成Git

  • 新建项目,绑定git:最便捷的方法是,创建一个新的空项目,把克隆来的项目中的所有内容拷贝到新创建的本地项目中

  • 克隆来的项目:xun-test,新建的项目:gitee-test

    image

  • 注意idea里的变化

    image

  • 使用IDEA操作git

    • 添加到暂存区:git add .
    • commit 提交:git commit -m "第一次提交"

    image

    • push到远程仓库:git push

    image

  • 登录码云查看

    image

Git分支

如果同一个文件在合并分支时都被修改了则会引起冲突:解决的办法是我们可以修改冲突文件后重新提交!选择要保留他的代码还是你的代码!

master主分支应该非常稳定,用来发布新版本,一般情况下不允许在上面工作,工作一般情况下在新建的dev分支上工作,工作完后,比如上要发布,或者说dev分支代码稳定后可以合并到主分支master上来

  • git分支中常用指令
    # 列出所有本地分支
    git branch
    
    # 列出所有远程分支
    git branch -r
    
    # 新建一个分支,但依然停留在当前分支
    git branch [branch-name]
    
    # 新建一个分支,并切换到该分支
    git checkout -b [branch]
    
    # 合并指定分支到当前分支
    $ git merge [branch]
    
    # 删除分支
    $ git branch -d [branch-name]
    
    # 删除远程分支
    $ git push origin --delete [branch-name]
    $ git branch -dr [remote/branch]
    

标签:02,文件,git,仓库,IDEA,Git,branch,分支
From: https://www.cnblogs.com/nefu-wangxun/p/16839141.html

相关文章

  • 20201220蔡笃俊《信息安全系统设计与实现》第六章学习笔记
    一、任务内容自学教材第6章,提交学习笔记(10分)知识点归纳以及自己最有收获的内容(3分)问题与解决思路(2分)实践内容与截图,代码链接(3分)...(知识的结构化,知识的完整性等,提交m......
  • CSP2022 J2参考解析
    目录P8813[CSP-J2022]乘方P8814[CSP-J2022]解密P8815[CSP-J2022]逻辑表达式P8816[CSP-J2022]上升点列https://www.luogu.com.cn/contest/90215#problemsP8813[C......
  • Git 01: 版本控制 + git配置 + git思想
    版本控制什么是版本控制版本控制(Revisioncontrol)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的......
  • 2022/10/27
    至此我每看到那些场景都会回想想起那年的今日有的是在阳光下的倾斜的长坡坡顶有家便利店卖的是散装的用袋子装的啤酒味道有点甜带着回甘最上面有一家教堂很大,从来......
  • 2022-2023-1 20221306《计算机基础与程序设计》第九周学习总结
    作业信息这个作业属于哪个课程<班级的链接>(2022-2023-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(2022-2023-1计算机基础与程序设计第九周作业)......
  • javaSE day02
    字面量888888  80 说明一下首先“id”不足8个字符,所以要加”\t“补全,但是”20204206“满足八个字符,添加就会加8个空格,不添加就会造成与后文相连,所以上......
  • 从新开始学JAVA - IDEA
    什么是IDE全称是集成开发环境(IDE,IntegratedDevelopmentEnvironment)是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成......
  • ON1 NoNoise AI 2023 for mac(ai摄影降噪软件)中文版mac/win
    想要获得更优质的图片效果,ON1NoNoise AI 2023中文版带给大家,专业高效的摄影降噪软件,使用AI驱动的NoNoiseAI快速去除噪点并获得照片中最清晰的细节。安装教程下......
  • [2022.10.29]常用类—基本数据类型和包装类
    Java提供了八种基本数据类型:byte、short、int、long、float、double、boolean、char,每种基本类型都有其对应的类基本数据类型对应包装类byteByteshortShort......
  • java学习 2022年10月29日13:26:28
    packagecn.tedu.type1;publicclassForDemo{publicstaticvoidmain(String[]args){outer:for(intj=1;j<10;j++){for(inti=0;i......