Git+bash学习笔记-总结

GiT学习笔记-总结

    • Git完整内容学习
    • Git 学习笔记
      • 常见的版本控制工具
      • 版本控制分类
      • Git和SVN的主要区别
      • bash基础命令
      • git命令
      • git环境配置
      • git基本理论(核心)
      • git项目的搭建
      • git文件操作
      • git忽略文件
      • 使用码云
      • 将本地项目部署到远程仓库
      • git分支

个人学习笔记记录有限,若完整学习,请移步码云官方Git大全

Git完整内容学习

码云Git大全

Git 学习笔记

常见的版本控制工具

Git

SVN

CVS

VSS

TFS

版本控制分类

1.本地版本控制

2.集中式版本控制 SVN

所有的版本数据都在服务器上 ,必须联网

3.分布式版本控制系统 Git

每个人都拥有全部的代码,在本地就能看到版本数据

不会因为服务器损坏,造成不能工作的情况

Git和SVN的主要区别

SVN集中版本控制系统

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。

Git分布式版本控制系统

Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。协同的方法是这样的∶比如说自己在电脑上改了文件A,樊他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件!

Git是目前世界上最先进的分布式版本控制系统。

官网下载慢,采用镜像下载

https://npm.taobao.org/mirrors/git-for-windows/

bash基础命令

mkdir 创建目录/文件夹

rm -r 删除文件夹

touch 创建文件

rm 删除文件

pwd 显示当前所在目录路径

history 查看历史命令

help 查看帮助

exit 退出

‘’#’’ 注释

git命令

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

[1] Git\etc\gitconfig Git安装目录下的gitconfig --system系统级

[2] C:\Users\Administrator.gitconfig 只适用于当前登录的用户配置 --globle 全局

git config -l #查看配置列表
git config --system --list #查看系统配置列表
git config --global --list #查看全局配置!必须配置
git config --global user.name "southerose" #全局配置用户名
git config --global user.email "[email protected]" #全局配置邮箱

git环境配置

git config --global user.name "southerose" #全局配置用户名
git config --global user.email "[email protected]" #全局配置邮箱

git基本理论(核心)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9DweaBWl-1618139000842)(C:\Users\Polaris\AppData\Roaming\Typora\typora-user-images\image-20201020211550366.png)]

Workspace:工作区,平时存放代码的地方。

Index/Stage:暂存区,用于临时存放你的改动,事实上他只是一个文件,保存即将提交到文件列表的信息。

Repository:仓库区(或本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据,其中HEAD指向最新放入仓库的版本。

Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J1WTWjDD-1618139000845)(C:\Users\Polaris\AppData\Roaming\Typora\typora-user-images\image-20201020213452490.png)]

git项目的搭建

本地仓库搭建

方式:1.创建全新的仓库

​ 2.克隆远程仓库

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

# 在当前目录创建一个Git代码库
$ git init
# 从远程克隆到本地仓库
$ git clone [url]
# 添加所有文件到暂存区stages
$ git add .
# 提交暂存区的内容到本地仓库repository -m提交信息
$git commit -m "content"//m:message
# 推动到remote
$git push
#查看制定文件状态
$ git status [filename]
# 查看所有文件状态
$ git status

[2] 执行后可以看到,仅仅在项目目录多出了一个.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

git忽略文件

# 注释
*.txt 忽略所有以.txt结尾的文件
!lib.txt #lib.txt除外
/temp #仅忽略项目根目录下的TODO目录,不包括其他目录temp
build/ #忽略build/目录下的所有文件
doc/*.txt #忽略doc/notes.txt 但不包括 doc/server/arch.txt

使用码云

1.注册账号,并且完善个人信息(不能乱填)

2.设置本机ssh公钥,实现免密码登陆

# 进入 c:\Users\Administrator\.ssh
# 生成公钥
$ ssh-keygen
# 生成公钥并且使用rsa加密
$ ssh-keygen -t rsa

3.将公钥信息public key 添加到码云账户即可

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

将本地项目部署到远程仓库

1.创建一个远程仓库

2.创建一个项目

3.将远程仓库clone到本地

4.将远程仓库的文件内容复制到本地项目文件里面

5.在项目里面依次

git add .

git commit -m “demo”

git push

git分支

# 查看本地分支
$ git branch
# 查看远程分支
$ git branch -r
# 创建一个新分支
$ git branch [branch-name]
# 创建一个分支,并切换该分支
$ git checkout -b [branch]
# 切换到指定分支
$ git checkout [branch]
# 合并指定分支到当前分支
$ git merge [branch]
# 删除分支
$ git branch -d [branch-name]
# 删除远程分支
$ git push origin [branch-name]
$ git branch -dr [remote/branch]

你可能感兴趣的:(工具)