git学习笔记

B站视频——尚硅谷Git入门到精通全套教程(涵盖GitHub\Gitee码云\GitLab)学习笔记,链接https://www.bilibili.com/video/BV1vy4y1s7k6?spm_id_from=333.999.0.0

笔记简介

1)git概述:git分布式版本控制系统的作用;git的工作机制;git和代码托管中心

2)git常用命令 及其注意事项

3)git分支操作

5)git团队协作机制

6)github操作

第一章 Git概述

git官网https://git-scm.com目前最新版本是2.37.1

1) 版本控制

Git是分布式版本控制系统,可以记录文件内容变化;最重要的是可以记录文件修改历史,用户能查看历史版本,方便版本切换。

2) Git工作机制

工作区:代码存放的磁盘目录

暂存区:工作区的代码添加到暂存区(临时存储,还没有历史版本,可以删掉)

本地库:历史版本生成,版本是改不掉了

3) git和代码托管中心

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

*  局域网:GitLab

*  互联网:GitHub、Gitee

第二章 Git常用命令

1)命令名称及作用

git config --global user.name    用户名设置用户签名

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

git init     初始化本地库

git status    查看本地库状态

git add 文件名添加到暂存区

git commit -m "日志信息" 文件名添加到本地库

git reflog查看历史版本

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

2)注意事项

a.设置用户签名

git config --global user.name 用户名

git config --global user.email 邮箱

注意

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

这里的设置用户签名和将来登录GitHub(或其他代码托管中心)的账号没有有人关系

b.版本穿梭

git reset --hard 版本号

git reset --soft 版本号

git reset中的hard与soft 引用自博客https://blog.csdn.net/liu19721018/article/details/124123527

 git reset --hard的作用是代码强制回溯到某节点,对于当前节点->回溯节点中间已commit的内容就会全部消失,而git reset --soft模式下与hard模式会有所不同,他会保存当前节点->回溯节点之间已保存的内容。

 --hard场景:1.当我们发现提交的某个commit思路不正确,或与业务有很大的出入时,我们此时可以选择使用–hard去回退版本(–hard)。

 --soft场景:1.当我们不小心把还没有添加完毕的功能commit提交上去时,这个时候我们可以使用–soft去回退我们误提交的commit,完成此功能后,在重新提交commit。


第三章 Git分支操作

1)分支的操作

git branch 分支名创建分支

git branch -v 查看分支

git checkout 分支名切换分支

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

2) 合并分支产生冲突

- 表现:后面状态为MERGING

- 冲突产生原因:合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改,Git无法替我们决定使用哪一个。必须人为决定新代码的内容。

- 处理冲突:打开文件,决定>>>>和<<<<中间用什么内容

- 处理冲突后,需要重新添加文件到暂存区+重新提交(注意:此时git commit 命令不能带文件名)

3)分支原理

分支名(如master)其实都是指向具体版本记录的指针,当前所在的分支,其实是由HEAD决定的,所以创建分支的本质其实是多创建一个指针。切换分支的本质就是移动HEAD指针。

第四章 Git团队协作机制

1)团队内协作

git push 把代码从本地库推送到代码托管中心的远程库 ,协作者push时需要获得权限

git clone 把代码从远程库克隆到本地库

git pull 把远程库中的代码拉取到本地库,并更新本地库代码

2)跨团队协作

fork: 官网定义A fork is a copy of a repository. Forking a repository allows you to freely experiment with changes without affecting the original project.

pull request 把代码从其他远程库拉到自己的远程库,需要审核和merge

第五章 GitHub操作

远程仓库操作

git remote -v查看当前所有远程地址别名

git remote add 别名 远程地址起别名

git push 别名 分支推送本地分支上的内容到远程仓库

git clone 远程地址 将远程仓库的内容克隆到本地

git pull 远程库地址别名 远程分支将远程仓库对于分支最新内容拉下来后与当前本地分支直接合并

注意:

1)克隆代码是不需要登录账户的,首次push代码需要登录

2)clone会做如下操作:1、拉取代码;2、初始化本地仓库;3、创建别名

3)不是自己创建的仓库,需要成为collaborator才可以push到仓库

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 版本控制工具应该具备的功能 -- 第一 协同修改多人协同合作修改同一个文件。数据备份保存目录和文件的当前状态,而且...
    邪人君子阅读 1,786评论 1 2
  • 参考资料:廖雪峰git教程[https://www.liaoxuefeng.com/wiki/8960434880...
    狼性代码人阅读 385评论 0 1
  • 此处记录笔者在学习Git上遇到的坑以及相关的学习笔记,留备日后避坑。新手上路,高手轻喷… 基本操作 跨团队协作 设...
    用户名是虾米鬼阅读 140评论 0 0
  • Git学习笔记 1. 基础操作 1. Git命令整理 git init创建一个空的版本库。 git add <fi...
    thekingofjiecao阅读 126评论 0 0
  • svn cvs 集中式版本管理 git 分布式 1:简单介绍:把改动推入(Push)到上游版本库(upstrea...
    偶尔小高兴阅读 1,008评论 0 1