git里最有用最经常使用的东西

0、最重要的一张图要记住,对理解git很关键

Git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。文件在这四个区域之间的转换关系如下:

在这里插入图片描述

  • Workspace:工作区,就是你平时存放项目代码的地方
  • Index / Stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
  • Repository:仓库区(或本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
  • Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换

1、先说git最有用最常使用的一个操作操作

当我们已经把file 进行了 add操作 ,然后这时我们又想忽略这个文件,你就会发现忽略不了。这时可以使用

git rm -r --cached [文件名或者文件夹名字]

先了解git rm -r --cached背后的原理:
1.若文件存在与stage和repository中时,会将文件从repository中删除,并且从stage中删除,但不会删除本地的实际文件,不过由于文件已经从repository中删除,文件会从tracked变成untracked
2.若文件存在与stage,却不存在与repository中,会将文件从stage中删除,但不会删除本地的实际文件。由于repository中本来就没有这个文件,所以该文件一样会是untracked状态。

2、在说一下比较常用的git命令的操作

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

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

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

#查看所有文件状态
git status

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

# 列出所有本地分支
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]
#查看系统config
git config --system --list
  
#查看当前用户(global)配置
git config --global  --list

Git相关的配置文件:

1)、Git\etc\gitconfig :Git 安装目录下的 gitconfig --system 系统级

2)、C:\Users\Administrator\ .gitconfig 只适用于当前登录用户的配置 --global 全局

3、再来谈谈使用.ignore插件在IDEA中忽略你要提交的文件

有的时间创建的文件,不想被提交到版本控制的的选项中。在IDEA中安装.ignore插件。创建好了之后:

1.新建.gitignore文件(后面说配置文件规则)

2.将不需要提交到版本控制add ignore中

4、在谈谈.ignore文件的忽略配置规则

  1. 忽略文件中的空行或以井号(#)开始的行将会被忽略。

  2. 可以使用Linux通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号([abc])代表可选字符范围,大括号({string1,string2,…})代表可选的字符串等。

  3. 如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。

  4. 如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略。

  5. 如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略)。

    例如:

    #为注释*.txt        #忽略所有 .txt结尾的文件,这样的话上传就不会被选中!!lib.txt     #但lib.txt除外/temp        #仅忽略项目根目录下的TODO文件,不包括其它目录tempbuild/       #忽略build/目录下的所有文件doc/*.txt    #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
    
    
    # Compiled class file
    *.class
    
    
    # Log file
    *.log
    
    # BlueJ files
    *.ctxt
    
    # Mobile Tools for Java (J2ME)
    .mtj.tmp/
    
    # Package Files #
    *.jar
    *.war
    *.nar
    *.ear
    *.zip
    *.tar.gz
    *.rar
    *.iml
    
    # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
    
    .idea/
    newshop-mall-biz/target/
    newshop-mall-biz/src/test/
    *.gitignore
    
    
    
    

最后在说一个小技巧

怎么最快速将一个java项目让git进行管理?

1、先在gitee(或者其他代码管理平台)创建一个仓库

2、将创建的仓库clone到本地 -----简称远程仓库项目

3、创建你的java项目 -----简称本地项目

4、然后将c远程仓库本项目里的所有文件(包括.git隐藏文件)拷贝到本地项目中,直接全覆盖

5、这是在idea中你就会发现 多了git的一些push pull commit 等操作(若没有出现这些图标)

注:若没有出现这些图标(若按照以下操作还未出现git操作等图标,可能你之前的操作有问题)

1、idea工具类里面查到 VCS ,下拉选项里面选择 Enable Version Control Integration。

2、在弹出框里面选择需要的版本管理工具,如选择Git。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值