Git入门培训

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Git入门培训 37
谢谢
3.5 目录结构
项目特有的配置信息,分支、远程地址等 当前分支的头部指针 钩子脚本样例,各个事件节点触发执行
保存所有的Git对象
Git对象的指针
Git入门培训
17
3.6 操作流程
Git入门培训
18
基本米
04
Git基本命令
16个基本命令
4.1 git init 初始化命令
git init
进入某目录,初始化一个空的git本地仓库。
Git入门培训
Git简介 Git安装
Git基本原理
Git基本命令 Git冲突解决
01
Git简介
由来 基本介绍 优缺点
1.1 由来
Git 是 Linus Torvalds 为了帮助管理 Linux 内核的开发,于2005年开发的一个版 本控制软件。
Git入门培训
4
1.2 基本介绍
Git(读音为/gɪt/)是一个开源的、非常先 进的、最流行的分布式版本控制系统,可以 有效、高速的处理从很小到非常大的项目版 本管理。
Git入门培训
9
2.3 Linux
Fedora yum install git Debian/Ubuntu sudo apt install git 也可以添加如下的PPA获取最新版: add-apt-repository ppa:git-core/ppa
Git入门培训
10
2.4 IDE
Eclipse: 在Eclipse MarketPlace中搜索egit:
将a.txt添加到暂存区
git add .
将修改和未跟踪文件添加到暂存区,不包括删除的文件
git add -u .
-u 表示将已跟踪文件中的修改和删除的文件添加到暂存区,不包括 新增加的文件
git add -A .
-A 表示将所有的已跟踪的修改、删除文件、新增的未跟踪的文件都 添加到暂存区。
Git入门培训 22
Git入门培训
6
02
Git安装
Windows Linux Mac IDE(Eclipse、VSCode等)
2.1 Windows
在如下官网地址下载: https://git-scm.com/download/win
Git入门培训
8
2.2 Mac
XCode: 在XCode中安装Command Line Tools git-osx-installer https://sourceforge.net/projects/gitosx-installer/
Git入门培训
13
3.2 快照
Git是一套内容寻址的文件系统,它存储的是key-value键值对。靠指针来寻 址。Git不保存版本之间的差异,保存的是文件系统的快照,这是和CVS、 SVN等传统集中式版本控制系统的主要差别。
Git入门培训
14
3.3 对象
Git主要有三种对象: 1.commit对象:记录了每次提交到本地仓库的文件快照; 2.tree对象:记录了文件快照中各个目录和文件的结构关系; 3.blob对象:记录了文件快照中发生变化的文件内容;
Git入门培训
20
4.2 git clone 克隆版本库命令
git clone file:///data/workspace/git-repo/ ./git-demo/
克隆一个远程仓库到本地git-demo目录。
Git入门培训
21
4.3 git add 将内容添加暂存区命令
git add a.txt
Git入门培训
15
3.4 文件状态 文件有四种状态: 1. 未跟踪(untracked): 2. 3. 4.
新创建的文件。
已修改(modified): 已暂存(staged): 已提交(committed):
修改后未暂存的文件。
放入暂存区待提交的文件。
已成功保存到本地仓库的文件。
Git入门培训
16
分别对应系统级配置/etc/gitconfig 当前用户级配置~/.gitconfig 不加参数对应项目级配置.git/config
Git入门培训 27
4.9 git reset 重置命令
git reset --soft
重置HEAD到另外一个commit,工作区和暂存区不会变化
git reset --mixed
git push
将本地更新推送到远程主机。
git push origin master:master
推送本地master分支的更新内容到origin远程的master分支。
Git入门培训
30
4.12
git branch 分支处理命令
git branch
列出当前分支清单,加-a:列出当前和远程分支
git branch dev
从远程仓库获取更新并进行合并(merge)。
git pull origin master:master
拉取origin远程主机的master分支到本地的master分支。 相当于执行: git fetch origin git merge origin/next
Git入门培训
29
4.11
git push 推送命令
git config --global user.name "liyujue"
配置系统当前用户的git用户名
git config --global credential.helper store
长期存储用户名和密码,不需每次都输入
git config --list
列出当前的配置
--system --global
git checkout 检出命令
git checkout dev
切换到dev分支
git checkout -b dev
创建dev分支并且切换到dev分支
git checkout -b dev <SHA-1>
在当前的某个commit上创建dev分支并切换到dev分支
Git入门培训
33
4.15
git cherry-pick 选择性合并命令
Git入门培训
5
1.3 优缺点
优点 安全性高; 性能好,速度快; 时刻保持数据完整性(SHA-1); 大部分操作无需联网; 远程服务器压力不会很大; 部署容易; 缺点 概念较多,有些不符合常规思 维,有一定学习成本; 代码保密性差,主要面向开源 社区; 如果有较多大文件,占用空间 较多,性能有下降;
git cherry-pick <SHA-1>
获取某一分支的单笔提交,并作为一个新的提交引入到当前分支
Git入门培训
34
4.16
git tag 标签管理命令
git tag
列出所有的标签
git tag V1.0
创建名为V1.0的轻量级标签。轻量级标签仅为特定对象的引用
git tag -a V1.0
创建名为V1.0的附注标签,附注标签为存储于Git中的完整对象
VSCode: 已内置Git支持,也可以安装更强的 GitLens
Git入门培训 11
03
Git基本原理
3.1 层级
Git的存储分为4个层级:
1.工作目录:直接可见的代码 2.暂存区:可通过命令查看,位于.git/index; 3.本地仓库:可通过命令查看,.git 4.远程仓库:git中心服务器,比如GitHub;
git push origin --tags
推送所有标签到远程
Gitຫໍສະໝຸດ Baidu门培训 35
05
Git冲突解决
5.1 Git冲突解决
出现冲突时点 git pull或者git merge 出现冲突原因 多人同时修改同一文件的相同内容区域 冲突解决方法 冲突区域通过<<<===>>>符号标记,等号前 为本地修改,等号后为远程修改。 修改后通过git add命令将修改后的文件添加到 暂存区然后提交即可。
git log
显示所有的日志。
git log --oneline
以一行的形式显示所有日志。
git log -p
显示文件的修改内容。
git log --name-status
附加列出变更的文件列表和修改状态。
Git入门培训 24
4.6 git status 状态查看命令
git status
显示工作目录和暂存区的状态。
Git入门培训
25
4.7 git revert 撤销命令
git revert HEAD
撤销前一次提交,将该提交反向修改提交一个新的版本,不影响历史。
git revert HEAD^
撤销前前一次提交。
git revert <SHA-1>
撤销指定的提交。
Git入门培训
26
4.8 git config 配置参数命令
4.4 git commit 提交命令
git commit -m '修改a.txt'
将暂存区里的改动给提交到本地的版本库,并生成40位的哈希值<SHA-1>。
git commit -am '修改a.txt'
将所有已跟踪文件中的执行修改或删除操作的文件都提交到本地仓库
Git入门培训
23
4.5 git log日志查看命令
基于当前分支创建名为dev的分支
git branch -d dev
删除本地dev分支
git push origin --delete dev
删除远程dev分支
Git入门培训 31
4.13
git merge 分支合并命令
git merge dev
将dev分支的变更合并到当前分支
Git入门培训
32
4.14
默认,重置HEAD和暂存区到另外一个commit,工作区不会变化
git reset --hard
重置HEAD、暂存区和工作区到另外一个commit
git reset HEAD~1
撤销最新的commit,暂存区与HEAD一致,保留工作区内容
Git入门培训 28
4.10
git pull 拉取合并命令
git pull
相关文档
最新文档