Git学习笔记

基本的Linux命令

平时一定要多使用这些命令

  1. cd .. : 返回上级目录(注意有空格)
  2. cd 指定目录 : 改变目录
  3. pwd : 显示当前所在目录
  4. ls : 列出当前目录中的所有文件
  5. touch : 新建文件,比如 touch index.js就会新建一个index.js文件
  6. rm : 删除文件,rm index.js把刚刚新建的文件删除
  7. mkdir : 新建一个目录(文件夹),mkdir test
  8. rm -r : 删除一个文件夹,rm -r test把刚刚新建的test文件夹删除
  9. mv : 移动文件, mv index.html test就是把html文件移动到test文件夹
  10. reset : 重新初始化终端/ 清屏
  11. clear : 清屏 (Windows是cls)
  12. history : 查看历史命令
  13. help : 帮助
  14. exit : 退出
  15. # : 表示注释
rm -rf / 递归清除,并把所有东西删除,格式化系统个,切勿在

Git配置

所有的配置文件,其实都保存在本地

git config -l                       所有的git配置,一般是本地配置
git config --system --list	查看系统配置
git config --global --list	查看全局配置
git config --global -e		打开用户级配置文件
  • 系统配置:在安装目录下,git\etcgit\config 可找到配置文件
  • 用户配置(必要):C:\Users\Administrator\ .gitconfig 适用于当前登录用户的配置 --global 全局
  • 环境变量只是为了全局使用而已

Git基本理论(核心)

工作区域

Git本地有三个工作区域:工作目录(working directory)、暂存区(stage/index)、资源库(repository或Git directory)。如果在加上远程的Git仓库(remote directory)就可以分为四个工作区域。文件在四个区域之间的转换关系如下:

微信图片_20220609223005
  • workspace : 工作区,平时存放项目代码的地方
  • index/ stage : 暂存区,用于存放临时改动,事实上只是一个文件,保存即将提交到文件列表的信息
  • repository : 仓库区,安全存放数据的位置,又提交的所有版本的数据。HEAD只想最新放入仓库的版本。
  • remote : 远程仓库,托管代码的服务器(例如GitHub)

工作流程

一般是这样的:

  1. 在工作目录中添加、修改文件;

  2. 将需要进行版本管理的文件放入暂存区域;

  3. 将暂存区域的文件提交到git仓库。

因此,git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed)

Git项目搭建

创建工作目录与常用指令

创建本地仓库的方法有两种:

  1. 创建新的仓库。
  2. 克隆远程仓库。

1、创建一个新的仓库

# 使用当前目录作为 Git 仓库,我们只需使它初始化。
$ git init

该命令执行完后会在当前目录生成一个 .git 目录,关于版本等的所有信息都在这个目录

2、另一种方式是克隆远程目录

是将远程服务器上的仓库完全镜像一份至本地

#克隆一个项目和它的整个代码历史(版本信息)
$ git clone [url] 

Git文件操作

查看文件状态

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

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

忽略文件

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

  1. 在主目录下建立".gitignore"文件,此文件规则:
  2. 忽略文件中的空行或以井号(#)开始的行将会被忽略。
  3. 可以使用Linux通配符。
  4. 如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。
  5. 如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略。
  6. 如果名称的最后面是一个路径分隔符(/),表示药葫芦的是次目录下该名称的子目录,而非文件(默认文件或目录都忽略)。
#为注释
*.txt		#忽略所有的.txt结尾的文件,这样的话上传就不会被选中
!lib.txt	#但lib.txt除外
/temp	#
build/	#
doc/*.txt	#

使用GitHub

  1. 登录注册

  2. 设置本机绑定SSH公钥,实现免密码登录

    # 进入
    # 生成公钥
    ssh-keygen
    

(上面是私钥,下面是公钥)

  1. 将公钥信息public key添加到用户中

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

IDEA中集成Git

Git分支

可以理解多线程:主线程在走,不影响子影响。

它们是平行,互不影响。

但是,他们可以进行合并。

在合并的时候就需要做一些处理了。

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]

如果同一个文件在合并分支时都被修改了则会引起冲突

解决引起冲突办法:

  1. 把本地冲突文件另保存起来
  2. 还原本地文件版本。
  3. 修改冲突文件后重新提交!

master主分支应该非常稳定,用来发布新版本,

一般情况下不允许在上面工作,工作一般情况下在新建的dev分支上工作,工作完后,代码稳定了,再合并到主分支上来。

比如上要发布,或者说dev分支代码稳定后可以合并到主分支master上来。

视频学习:

Git最新教程通俗易懂

posted @ 2022-08-04 15:10  mi4444ta  阅读(26)  评论(0编辑  收藏  举报