Git学习笔记

Git概述

        git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目

什么是版本控制

        版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统

        版本控制最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换

版本控制工具

1、集中式控制工具(CVS、SVN)

        集中式的版本控制工具都有一个单一的集中管理的中央服务器,用来保存所有文件的修订版本。版本库是集中存放在中央服务器上的,要从中央服务器上拉取,工作完成后再推送到中央服务器,必须要联网才能实现。优点是管理方便。缺点是单点故障问题,如果中央服务器宕机,所有人都无法正常提交更新。

2、分布式控制工具(git)

        分布式控制工具,客户端拉取下来的不是最新版本的文件快照,而是把代码仓库完整的镜像下来到本地库。这样任何一处协同工作的文件发生故障,都可以用其他客户端的本地仓库进行恢复。因为每个客户端的每一次文件提取操作,实际上都是一次对整个文件仓库的完整备份。

3、分布式版本系统相较于集中式版本系统的优点:

(1)服务器断网的情况下也可以使用(因为版本控制实在本地运行的)

(2)每个客户端保存的都是完整的项目(包含历史记录,更加安全)

Git工作机制

代码托管中心

        代码托管中心是基于网络服务器的远程代码仓库,一般称为远程库

局域网:

        GitLab

互联网:

        GitHub(外网)

        Gitee码云(国内网站)

Git常用基础命令

1、设置用户签名

//设置用户名
git config--global user.name 用户名
//设置邮箱
git config--global user.email 邮箱

2、查看用户名和邮箱

//查看用户名
git config user.name
//查看邮箱
git config user.email

3、初始化本地库

        获取需要管理项目的git管理权限,在需要管理的项目目录中执行git init,执行完后会出现一个.git隐藏文件

git init

4、查看本地库状态

git status

执行该语句会打印两条(提交过)或三条(没有提交过)日志信息:

        没有提交过git:

                第一个日志信息输出当前所在分支

                第二个日志信息输出提交记录

                第三个日志信息输出暂存区中待提交的文件

        提交过git:

                第一个日志信息输出当前所在分支

                第二个日志信息输出暂存区中待提交的文件

 在项目目录中新建一个txt文件后执行git status:

 

5、添加到暂存区

git add 要添加的文件名

执行git add gitDemo.txt后查看状态:

 

6、从暂存区中删除(工作区中的不会删除)

git rm --cached 文件名

7、提交到本地库

git commit -m "日志信息" 文件名

提交后执行git status:

 

 8、查看日志信息

//简略日志信息
git reflog
//详细日志信息
git log    

9、版本穿梭

git reset --hard 版本号

Git分支

什么是分支?

        在版本控制过程中,同时推进多个任务时,就可以为每个任务创建单独的分支。使用分支意味着程序员可以将自己的开发任务从主线上分离出来,开发自己的分支时不影响主线分支的运行。

使用分支的优点

        可以同时推进多个功能开发,提高开发效率;如果某一个分支开发失败,不会对其他分支产生影响,将失败的分支删除重新开始即可。

分支操作命令

命令

作用

git branch 分支名

创建分支

git branch -v

查看分支

git checkout 分支名

切换分支

git merge 分支名

把指定的分支合并到当前分支上

合并冲突问题

        合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。

        怎么解决:

        1、编辑有冲突的文件,删除特殊符号,决定要使用的内容

        2、添加到暂存区

        3、提交(此时提交不能带文件名)

GitHub操作

创建远程仓库别名

//查看当前远程地址的所有别名
git remote -v
//创建别名
git remote add 别名 远程地址

推送本地分支到远程仓库

git push 地址/别名 分支

拉取远程库到本地库

git pull 地址/别名 分支

克隆远程仓库到本地

git clone 远程仓库地址

IDEA集成Git

配置Git忽略文件

1、创建忽略规则文件git.ignore

# 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

# virtual mechine crash logs, see http://www/java.com/en/download/help/error_hotspot.xml
hs_err_pid*

.classpath
.project
.settings
target
.idea
*.iml

2、配置.gitconfig文件

[core]
excludesfile = C:/Users/86158/git.ignore

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

迟小歪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值