git学习笔记

(根据尚硅谷git视频做的一些笔记,刚开始写博客,如有问题还请多多指教)

目录

1、git介绍

1.1 关于版本控制:

1.2 git工作机制

1.3 git代码托管中心(远程库):

1.4 git常用命令

1.5 git的分支操作

2、github操作

2.1 创建远程库

 2.2 git 远程仓库相关命令操作:

2.3 github邀请成员加入团队

2.4 跨团队协作

2.5 配置SSh免密登录

3、idea集成git

3.1 配置git忽略文件

3.2 idea配置git

3.3 初始化本地库


1、git介绍

Git是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小型到大型的项目。

1.1 关于版本控制:

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

简单说就是记录保存一个文件的历史修改记录,每修改一次保存为一个版本,方便版本切换和查看历史版本。

版本控制工具一般有两类:集中式版本控制工具和分布式版本控制工具

  • 集中式版本控制工具

cvs、svn、vss等

集中式的版本控制系统都有一个单一的集中管理的服务器,保存所有文件的修订版本,每个人都通过客户端连到这台服务器,取出最新的文件或者提交更新,并在本地只能存在一个最新版本。

多年以来,这已成为版本控制系统的标准做法。 这种做法带来了许多好处,每个人都可以在一定程度上看到项目中的其他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个集中化的版本控制系统,要 远比在各个客户端上维护本地数据库来得轻松容易。

这么做显而易见的缺点是中央服务器的单点故障。如果服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。

  • 分布式版本控制工具

Git、Mercurial、Bazaar、Darcs等

分布式版本控制不再具有唯一的服务器,使用者将代码从远程库中下载到本地,并在本地进行修改并保存,再上传回远程库,当远程库出现故障时,由于代码保存并在本地中有记录,所以不会出现丢失问题。

1.2 git工作机制

工作区:存放代码的本地磁盘位置

暂存区:工作区的代码需要先添加到暂存区

本地库:暂存区的代码提交到本地库后就会生成相应的版本记录,并无法轻易删除。

1.3 git代码托管中心(远程库):

局域网:GitLab

互联网:GitHub、Gitee

1.4 git常用命令

(注:linux命令在git中是通用的,因此可以在git中使用linux命令。)

设置用户签名,Git 首次安装必须设置一下用户签名,否则无法提交代码。

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

初始化本地库: git init         (成功后会生成.git文件)

查看当前状态:git status

添加记录到暂存区:git add 文件名 

删除暂存区中的文件:git rm --cached 文件名

将暂存区的文件提交到本地库:git commit -m "日志信息(版本信息,可无)" 文件名

查看历史版本信息:git reflog 或 git log  后者更详细

版本穿梭:git reset --hard 版本号

(git底层是通过移动指针来切换不同的版本)

1.5 git的分支操作

在版本控制过程中,同时推进多个任务,对每个任务,我们可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行,使用分支可以提高开发效率,分支底层是通过指针实现。

创建分支:git branch 分支名

查看分支:git branch -v

切换分支:git checkout 分支名

合并分支到当前分支:git merge 分支名

合并冲突:当两个分支在同一个文件的同一个位置都修改了,并且修改的内容不一致,因此无法确定使用哪一个修改,需要人为手动修改。

在修改后添加到暂存区准备提交时,不用再写文件名,否则无法确定是要提交哪个文件。

2、github操作

2.1 创建远程库

进入 github官网

点击右上角+号的new repository

输入你要创建的仓库名后点击创建即可

git学习笔记_第1张图片git学习笔记_第2张图片

 2.2 git 远程仓库相关命令操作:

查看别名:git remote -v

创建别名:git remote add 别名 远程库地址

代码推送:git push 别名 分支名

代码拉取:git pull 别名 分支名

代码克隆:git clone 远程库地址

(克隆会进行三个操作:拉取远程库代码、初始化到本地仓库、创建别名)

2.3 github邀请成员加入团队

git学习笔记_第3张图片

git学习笔记_第4张图片

 输入要添加的用户后会生成一个地址,复制这个地址给要添加的成员

要添加的成员在登录自己的github账号后进入复制过来的地址

之后会出现一个邀请的链接,点击接受邀请即可

2.4 跨团队协作

复制远程库地址需要跨团队人员

跨团队成员在登录自己的github账号后进入复制过来的地址

然后点击Fork即可将项目叉到自己的仓库中

跨团队成员可以在线编辑文件

在编辑完成后点击 new pull request后创建pull请求即可将修改的代码发回给对方

 此时在对方github的Pull request上可以看到有一个请求

2.5 配置SSh免密登录

之前在往远程仓库push文件的时候使用的是HTTPS,每次都需要进行登录认证操作,使用SSH可以不用。

进入用户家目录删除 .ssh目录

rm -rvf .ssh

执行下面命令重新生成 .ssh 目录

ssh-keygen -t rsa -C 你的邮箱

进入 .ssh 并复制id_rsa.pub文件内容

登录github,点击头像--》settings --》SSH and GPG keys

git学习笔记_第5张图片

 将复制的内容放入key中,标题可以随便取一个

完成

3、idea集成git

3.1 配置git忽略文件

  • 创建忽略规则文件 xxxx.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 machine crash logs, see 
http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
.classpath
.project
.settings
target
.idea
*.iml
  • 在.gitconfig 文件中引用忽略配置文件(此文件在 Windows 的家目录中)
[user]
name = Layne
email = [email protected]
[core]
excludesfile = C:/Users/asus/git.ignore

注意:excludesfile 请修改为你的忽略文件地址

3.2 idea配置git

file --》  Version Control  --》git

选择git.exe位置后点击test测试,没问题的话idea会识别git版本 

git学习笔记_第6张图片

3.3 初始化本地库

VCS  --》 Create Git Reposity

选择 Git 本地仓库文件

现在可以通过idea操作git了~

你可能感兴趣的:(git,git,github)