Git入门培训
Git入门培训 27
4.9 git reset 重置命令
git reset --soft
重置HEAD到另外一个commit,工作区和暂存区不会变化
git reset --mixed
Git入门培训
15
3.4 文件状态 文件有四种状态: 1. 未跟踪(untracked): 2. 3. 4.
新创建的文件。
已修改(modified): 已暂存(staged): 已提交(committed):
修改后未暂存的文件。
放入暂存区待提交的文件。
已成功保存到本地仓库的文件。
Git入门培训
16
VSCode: 已内置Git支持,也可以安装更强的 GitLens
Git入门培训 11
03
Git基本原理
3.1 层级
Git的存储分为4个层级:
1.工作目录:直接可见的代码 2.暂存区:可通过命令查看,位于.git/index; 3.本地仓库:可通过命令查看,.git 4.远程仓库:git中心服务器,比如GitHub;
Git入门培训
13
3.2 快照
Git是一套内容寻址的文件系统,它存储的是key-value键值对。靠指针来寻 址。Git不保存版本之间的差异,保存的是文件系统的快照,这是和CVS、 SVN等传统集中式版本控制系统的主要差别。
Git入门培训
14
3.3 对象
Git主要有三种对象: mit对象:记录了每次提交到本地仓库的文件快照; 2.tree对象:记录了文件快照中各个目录和文件的结构关系; 3.blob对象:记录了文件快照中发生变化的文件内容;
git push origin --tags
推送所有标签到远程
Git入门培训 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入门培训
Git简介 Git安装
Git基本原理
Git基本命令 Git冲突解决
01
Git简介
由来 基本介绍 优缺点
1.1 由来
Git 是 Linus Torvalds 为了帮助管理 Linux 内核的开发,于2005年开发的一个版 本控制软件。
Git入门培训
4
1.2 基本介绍
Git(读音为/gɪt/)是一个开源的、非常先 进的、最流行的分布式版本控制系统,可以 有效、高速的处理从很小到非常大的项目版 本管理。
Git入门培训 37
谢谢
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中的完整对象
3.5 目录结构
项目特有的配置信息,分支、远程地址等 当前分支的头部指针 钩子脚本样例,各个事件节点触发执行
保存所有的Git对象
Git对象的指针
Git入门培训
17
3.6 操作流程
Git入门培训
18
基本米
04
Git基本命令
16个基本命令
4.1 git init 初始化命令
git init
进入某目录,初始化一个空的git本地仓库。
Git入门培训
5
1.3 优缺点
优点 安全性高; 性能好,速度快; 时刻保持数据完整性(SHA-1); 大部分操作无需联网; 远程服务器压力不会很大; 部署容易; 缺点 概念较多,有些不符合常规思 维,有一定学习成本; 代码保密性差,主要面向开源 社区; 如果有较多大文件,占用空间 较多,性能有下降;
4.4 git commit 提交命令
git commit -m '修改a.txt'
将暂存区里的改动给提交到本地的版本库,并生成40位的哈希值<SHA-1>。
git commit -am '修改a.txt'
将所有已跟踪文件中的执行修改或删除操作的文件都提交到本地仓库
Git入门培训
23
4.5 git log日志查看命令
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 推送命令
将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:///download/win
Git入门培训
8
2.2 Mac
XCode: 在XCode中安装Command Line Tools git-osx-installer https:///projects/gitosx-installer/
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入门培训
25
4.7 git revert 撤销命令
git revert HEAD
撤销前一次提交,将该提交反向修改提交一个新的版本,不影响历史。
git revert HEAD^
撤销前前一次提交。
git revert <SHA-1>
撤销指定的提交。
Git入门培训
26
4.8 git config 配置参数命令
基于当前分支创建名为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
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 config --global "liyujue"
配置系统当前用户的git用户名
git config --global credential.helper store
长期存储用户名和密码,不需每次都输入
git config --list
列出当前的配置
--system --global
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
Git使用教程
Git使用教程原文出处:涂根华的博客一:Git是什么?Git是目前世界上最先进的分布式版本控制系统。
二:SVN与Git的最主要的区别?SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。
集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。
Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。
既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。
三:在windows上如何安装Git?msysgit是 windows版的Git,如下:需要从网上下载一个,然后进行默认安装即可。
安装完成后,在开始菜单里面找到“Git –> Git Bash”,如下:会弹出一个类似的命令窗口的东西,就说明Git安装成功。
如下:安装完成后,还需要最后一步设置,在命令行输入如下:因为Git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识。
注意:git config –global 参数,有了这个参数,表示你这台机器上所有的Git 仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。
四:如何操作?一:创建版本库。
什么是版本库?版本库又名仓库,英文名repository,你可以简单的理解一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改,删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件”还原”。
所以创建一个版本库也非常简单,如下我是D盘–> www下目录下新建一个testgit版本库。
Git+使用教程
为了简明起见,我们创建两个文件作为练习:
$ echo "Hello world" > hello $ echo "Silly example" > example
我们再用 git-add 命令将这两个文件加入到版本库文件索引当中:
$ git-add hello example
Git 中文教程
● 创建一个属于自己的个人工作分支,以避免对主分支 master 造成太多的干扰,也方便与他人交流协 作。
● 当进行高风险的工作时,创建一个试验性的分支,扔掉一个烂摊子总比收拾一个烂摊子好得多。 ● 合并别人的工作的时候,最好是创建一个临时的分支,关于如何用临时分支合并别人的工作的技巧,
$ git-update-index --add hello example
如果你要将某个文件从 git 的目录跟踪系统中清除出去,同样可以用 git-update-index 命令。例如:
$ git-update-index --force-remove foo.c
Note git-add 可以将某个目录下的所有内容全都纳入内容跟踪之下,例如: git-add ./path/to/
/documents/gittutorcn.htm(第 5/23 页)2008-12-13 13:34:48
Git 中文教程
$ git-checkout robin $ echo "Work, work, workd" >> hello $ git-commit -m "Some workd" -i hello
$ git-checkout master $ echo "Play, play, play" >> hello $ echo "Lots of fun" >> example $ git-commit -m "Some fun" -i hello example
Git版本控制_姚伦
版本控制为我们解决的问题
个人的版本控制 ✓ 时光机 ✓ 云存储 ✓ 在GitHub上的博客、“简历”
• 项目的版本控制 ✓ 工作协同 ✓ 发布管理 ✓ Debug (git bisect) ✓ 代码审核 ✓ 持续集成
本地版本控制系统
许多人习惯用复制整个项目目录的方式来保存不同 的版本,或许还会改名加上备份时间以示区别。这么做唯一的 好处就是简单,不过坏处却不少:有时候会混淆所在的工作目 录,弄错了文件丢了数据就没了后退的路。 为了解决这个问题,人们很久以前就开发了许多种 本地版本控制系统,大多都是采用某种 简单的数据库来记录文件的历次更新差异。
真正的分支;合并更容易 提交修正和重构
习惯和方式的转变 忘记推送(PUSH) 历史变更影响最新数据
提交版本号太长 习惯的转变 提交丢失
多样化协同模型 对新人的审核;受控库
什么是GIT?
Git是一个分布式版本控制/软件配置管理软件,原来是linux 内核开发者Linus Torvalds为了更好地管理linux内核开发而创立 的。 /wiki/Git
Git做不到的?
无锁定/解锁模式
✓ 不能排他式修改,所以Git不适合...
• 不能克隆子目录
✓ 版本库拆分
✓ 所以Android有近200个Git库
• 整体的读授权,0/1
Git安装
HTTPS:/// GITHUB IS THE BEST PLACE TO SHARE CODE WITH FRIENDS, CO-WORKERS, CLASSMATES, AND COMPLETE STRANGERS. OVER THREE MILLION PEOPLE USE GITHUB TO BUILD AMAZING THINGS TOGETHER.
git使用培训ppt课件
管理删除
git status命令查看哪些文件被删除了,使用git rm 从版本库中删除文件 另一种情况是删错了文件,怎么恢复 场景1:当你删除了工作区某个文件的内容,想直接恢复, 用命令git checkout -- file。(没有执行git rm之前) 场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时(执行了git rm,但没有git commit),想丢弃修改,分两步,第一步用命令git reset HEAD file,就 回到了场景1,第二步按场景1操作。 场景3:现在,假设你不但改错了东西,还从暂存区提交到了版本库(执行了git rm,git commit –m 命令),怎么办呢?可以使用版本回退, git relog /git log git reset --hard HEAD^或者git reset --hard commit_idrest
版本回退
在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,往上100个版本写成HEAD~100。 当你用$ git reset --hard HEAD^回退到’ 修改Readme.txt文件’版本时,再想恢复到’新增团 结、努力’版本,就必须找到’新增团结、努力’的commit id。Git提供了一个命令git reflog 用来记录你的每一次命令:
• 取出(Check-out): 一次“取出”,就是在本地 创建一份仓库的工作拷贝。
• 提交(Commit): 一次“提交”,将本地的修改写 回到仓库或合并到仓库。
• 冲突(Conflict): 当开发者们同时提交对同一文件 的修改,而且版本系统不能把它们合并到一起, 就会引起冲突,就需要人工来进行合并。
关联远程版本服务器
一、方式1 1、在本地git init 新建版本库 2、在远程新建版本数据库关联远程 3、关联git remote add origin 项目地址 4、推送git push -u origin master到远程版本服务器 二、方式2 1、在远程新建版本数据库关联远程 2、git clone 项目地址 本地目录(可以默认不写)
Git培训资料1
文档编号:第版分册名称:第册/共册工作流程手册修订履历目录1 概述 (1)1.1 文档目的和范围 (1)1.2 软件安装 (1)1.3 代码基线 (1)2 工作流程 (1)2.1 克隆本地远程库代码 (1)2.2 添加开发人员远程库地址 (3)2.2.1 GIT-GUI (3)2.2.2 汉龟 (3)2.3 代码集成(Merge) (6)2.3.1 GIT-GUI (6)2.3.2 汉龟: (8)2.4 Merge之后后的后续工作 (10)2.5 Apk加密.............................................................................................................. 错误!未定义书签。
2.6 填写ReleaseNote ................................................................................................. 错误!未定义书签。
2.7 版本发布前的验证.............................................................................................. 错误!未定义书签。
2.8 版本发布.............................................................................................................. 错误!未定义书签。
3 Git的其他用法 (13)1概述1.1 文档目的和范围本文档描述了项目中配置工具的用法,通过阅读该手册开发人员能够独立完成工作。
本文档主要读者为项目组新员工,对Git工具不熟悉人员。
git入门(常用命令操作)
Page 23
本地版本控制 04 Local Version Control
Page 24
4.1 添加修改
· 如图给 helloworld.cpp 添加一行文本
* Git 已追踪文件的图标会随着工作区状态的改变而改变
Page 25
4.1 添加修改
· 使用 git status 命令查看当前仓库工作区的状态
Page 4
1.2 集中式版本控制系统(CVCS)
· 集中式版本控制系统(CVCS): 这类系统,诸如 CVS,Subversion 以及 Perforce 等,都有一个单一的 集中管理服务器,保存所有文件的修订版本,而协同工作的开发人员都通过 客户端连到这台服务器,取出最新的文件或者提交更新。 这么做最显而易见的缺点是中央服务器的单点故障。如果宕机一小时, 那么在这一小时内,谁都无法提交更新,也就无法协同工作。要是中央服务 器的磁盘发生故障,碰巧没做备份,或者备份不够及时,就还是会有丢失数 据的风险,最坏的情况是彻底丢失整个项目的所有历史更改记录。
Page 35
4.4 撤销修改
撤销修改分为三种情况: · 仅仅修改了工作区内容,未添加到暂存区 · 修改了工作区内容并且添加到暂存区,但未提交修改 · 修改被添加到暂存区并且提交了修改
Page 36
4.4 撤销修改
情况一: 仅仅修改了工作区内容,未添加到暂存区(没有经过 add 和 commit 的修改),如图
* --global 表示设置的范围(系统,全局,项目)
· 修改前需要先使用 --unset 参数清空需要修改的设置 $ git config --unset --global
Page 15
2.1 Git 的帮助与初始化
《git基础知识》PPT课件
精选PPT
14
由 git 帐号来统一管理
在ssh clien端,产生ssh clien端用户的公钥 保存在服务器上 git 用户的authorized_keys 文件中
创建ssh客户端liuxiaotao用户的公钥 su qi_jl ssh-keygen 得到 /home/qi_jl/.ssh/ id_rsa.pub
服务器分支操作
git clone ssh://git@192.168.1.3:5091/repository/cultraview/ctv-launcher/launcher4.2-old.git/
精选PPT
11
四. git 常见使用场景
git 和 repo 啥关系?
如何通过repo下载android源代码? 如何通过repo创建android的源代码server?
精选PPT
3
精选PPT
4
Git比SVN有什么优势
上传下载的速度比svn快得多( 异地协同工作。(如:不用联网也历史记录) 现场版本控制。( 更好用的提交列表。 更好的差异比较。 工作进度保存。 作为SVN前端实现移动办公。 无处不在的分页器。
精选PPT
5
精选PPT
repository
13
五. git 库的权限问题
Git 架设
使用 HTTP 就是走 Web server 的权限,
走 SSH 就是取决于各个帐号的权限. (Git 的 object 目录里面会有权 限问题)
若多人共用的话, 要走 SSH 有下述几种方法:
1. 建立新帐号(git), 由 git 帐号来统一管理(commit / push) 等操作
戚景亮—2015.1. 6
软件开发培训机构培训计划
软件开发培训机构培训计划一、培训目标本次培训的目标是为学员提供软件开发方面的知识和技能,帮助他们掌握各种软件开发的基本原理、工具和方法,并能够在实际项目中独立进行开发工作。
培训内容旨在提升学员的专业能力,使其成为具备优秀软件开发技能的专业人才。
二、培训周期本次培训总周期为3个月,每周培训5天,每天8小时。
三、培训内容1. 编程语言基础- C语言- Java- Python2. 数据结构与算法3. Web前端开发- HTML/CSS- JavaScript- React/Vue4. Web后端开发- Node.js- Express- MongoDB5. 移动应用开发- Android开发- iOS开发- React Native6. 系统架构设计7. 测试与调试8. 项目管理与协作9. 软件开发工具及实践技能- Git- Docker- CI/CD- Agile开发方法- Kubernetes10. 案例分析与实践四、培训方式1. 理论课程每周安排2天进行理论课程的授课,讲解各项技术的基本原理和核心知识点。
2. 实践项目每周安排3天进行实践项目的训练,学员将在实际项目中应用所学知识,并由专业导师进行指导和辅导。
五、培训方法1. 班级教学小班制教学,每班不超过20人,保证学员每个人都能够得到充分的关注和指导。
2. 实践项目通过实际项目的训练,让学员了解真实开发场景,并积累实战经验。
3. 互动讨论在课程中鼓励学员参与讨论,提出问题,增加学习的互动性。
六、培训师资我们将邀请具有多年软件开发实践经验的资深工程师和行业专家担任培训讲师,确保学员能够从专业的技术人员那里获得最新的行业动态和实践技能。
七、培训评估1. 考核方式- 学员将通过理论考试,实践项目评定和综合评估等方式进行考核。
2. 考核标准- 按照培训目标和学习要求,对学员的编程能力、项目实施能力、团队协作能力等方面进行考核。
八、培训证书学员在培训结束后,经考核合格者将颁发软件开发培训结业证书。
git 使用方法
git 使用方法
Git是一款分布式版本控制系统,可以用于数据的同步和版本管理。
下面我们以谷歌GitHub为例,介绍如何使用Git:
一、配置Git帐号
1. 登录GitHub
2. 点击右上角的settings,进入GitHub个人信息管理页面
3. 在左侧菜单栏点击SSH and GPG keys,点击右上角”New SSH Key“
4. 在Title输入”Git_Local“,再将本地生成的SSH Key内容复制进去,点击”Add SSH Key“
二、使用Git创建项目
1. 进入要保存项目的文件夹,点击右键打开Git Bash Here
2. git init (创建一个新的本地Git仓库)
3. git status (查看本地Git仓库的状态)
4. git add. (添加当前目录下所有文件到本地Git仓库)
5. git commit -m "xxx" (提交文件到本地Git仓库)
6. git push origin master (把本地Git仓库的commit提交到GitHub)。
软件开发行业培训方案
软件开发行业培训方案随着科技的迅猛发展和信息技术在各行各业的广泛应用,软件开发行业成为了当今社会最具前景和潜力的行业之一。
然而,由于技术的快速更新和变化,软件开发人才的培养与开发显得尤为重要。
为了满足软件开发行业对人才的需求,我们特别设计了以下软件开发行业培训方案。
一、培训目标本培训方案旨在培养学员成为具备扎实的软件开发技术和全面的职业素养的软件开发人才。
通过本培训方案的学习,学员将掌握各类软件开发技术,熟悉软件开发流程,具备解决实际问题的能力,并能够独立完成软件开发项目。
二、培训内容1. 编程语言基础:学员将学习并掌握常见的编程语言,如Java、Python、C++等。
通过理论学习和实际编程练习,学员将能够独立编写代码并解决各类编程问题。
2. 软件开发框架和工具:学员将学习并熟悉常见的软件开发框架和工具,如Spring、Hibernate、Eclipse等。
通过实践项目,学员将能够灵活运用框架和工具,提高软件开发效率。
3. 数据库设计与管理:学员将学习数据库设计的基本原理和技巧,熟悉关系型数据库和非关系型数据库的使用。
通过课堂实例和实际数据库项目,学员将具备独立设计和管理数据库的能力。
4. 软件开发流程与项目管理:学员将学习软件开发的全过程,包括需求分析、系统设计、编码测试、上线部署等环节。
同时,学员还将学习项目管理的基本理论和方法,掌握团队协作与沟通技巧。
5. 软件测试与质量保证:学员将掌握软件测试的方法和技巧,学习编写测试用例和执行测试的流程。
通过实际测试项目,学员将能够保障软件质量和满足用户需求。
6. 远程协作与版本控制:学员将学习使用远程协作工具和版本控制系统,如Git、SVN等。
通过实践项目,学员将能够与团队成员协同开发,同时掌握代码版本管理的技巧。
三、培训方法1. 理论授课:学员将接受系统的理论授课,包括教材讲解、案例分析等。
教师将采用互动式教学,引导学员积极思考和解决问题。
2. 实践项目:学员将参与实践项目,通过与真实软件开发项目类似的练习,提高解决实际问题的能力和经验。
