git使用培训课件

合集下载

Git介绍 PPT

Git介绍 PPT
比如,要学习 config 命令可以怎么用,运行: $ git help config
小结
至此,你该对 Git 有了点基本认识,包括它和以 前你使用的 CVCS 之间的差别,如何在个操作系统下 安装git,以及初始化git的配置。
二 Git基础
如何初始代码库化,跟踪文件,暂存和提交更新 如何让Git忽略某些文件
What is Git?
优势
工作原理
优势
直接纪录快照,而非差异比较 近乎所有操作都是本地执行 时刻保持数据完整性 多数操作仅添加数据
直接纪录快照,而非差异比较 Git
保存每次更新时的文件快照
Git 和其他版本控制系统的主要差别 其他系统
在每个版本中记录着各个文件的具体差异
近乎所有操作都是本地执行
$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \ libz-dev libssl-dev
源码下载地址
/download 编译并安装:
$ tar -zxf git-1.7.2.2.tar.gz $ cd git-1.7.2.2 $ make prefix=/usr/local all $ sudo make prefix=/usr/local install
另外还有一个图形界面的 Git 项目管理工具TortoiseGit
5 Eclipse下的插件安装 http://192.168.9.15/wiki/index.php?doc-view-210
初次运行 Git 前的配置
$ git config --global lvl $ git config --global user.email ldshangfeng425@ $ cat ~/.gitconfig | head -3

GIT入门PPT

GIT入门PPT
Untracked files <尚未跟踪的文件>

git log显示提交日志

$ git log
commit 96a8a6dff817ec66f44342007202690a93763949 Author: zhangsan <zhangsan@> Date: Mon Dec 9 21:52:11 2013 +0800 add hello world module

换到develop分支 简化上面两个操作为一个操作 从某个历史提交创建分支
#git checkout develop

#git checkout -b develop

#git checkout -b temp 8f7a493c
分支合并
Git merge 合并分支
#git checkout master 转到主分支 #git merge bugfix 合并1个bug修复分支
#git config --global "zhangsan" #git config --global user.email “zhangsan@"

查看已有的git配置信息 配置单个git项目的配置
#git config --list

#git config user.email "zhangsan@"
$git clone URL
git add 和git commit

$git add 将未跟踪或已修改的文件加入到暂存 区域
#git add hello.c $git commit 将暂存区域的文件提交到版本 库,(如果使用-a 选项已跟踪已修改未暂存的文 件也会提交)

《git使用培训》课件

《git使用培训》课件

Git的安装与配置
安装方法
指导参与者如何在不同操作系 统上安装Git,并提供相关资源。
配置项
介绍Git的常用配置项,包括用 户名、邮箱和默认编辑器。
全局配置
讲解如何使用全局配置对所有 仓库生效,便捷管理Git设置。
Git的基础操作
1
版本控制
展示如何创建版本、回滚修改,以及查看文件差异。
2
仓库操作
补丁操作
学习如何创建和应用补丁,方便协作和代码修改。
重写提交记录
展示如何使用Git的交互式rebase命令编辑提交记录。
Git的使用案例
实践应用
分享一些真实场景下使用Git 的案例,如个人项目管理、 协作开发等。
Hale Waihona Puke 团队开发介绍如何使用Git进行团队合 作开发,分工协作和代码合 并。
协作方式
探讨不同协作模式下的Git使 用方法,如Fork流程和Pull Request。
总结适合使用Git的场景, 如个人项目、团队开发和 开源贡献。
展望Git的未来,包括更好 的性能、更多的集成和更 丰富的功能。
《git使用培训》PPT课件
# Git使用培训 介绍Git的基本概念、优点和工作原理,以及本次培训的内容和目标。
什么是Git?
基本概念
介绍Git的核心概念,如版本控制、工作区和暂存区。
优点
探讨Git相比于其他版本控制系统的优势,如分布式和可靠性。
工作原理
详解Git的底层工作原理,包括对象存储和引用指针。
演示如何初始化仓库、添加文件、删除文件和查看提交历史。
3
基本命令
介绍常用的Git命令,如add、commit、branch和merge等。

Git使用简介ppt(1)

Git使用简介ppt(1)


Git分支-一个例子

有时候合并操作并不会如此顺利。如果在不同的分支中都修改了同一 个文件的同一部分,Git 就无法干净地把两者合到一起(注:逻辑上 说,这种问题只能由人来裁决)。
Git 作了合并,但没有提交,它会停下来等你解决冲突。要看看哪些 文件在合并时发生冲突,可以用 git status 查阅。 任何包含未解决冲突的文件都会以未合并(unmerged)的状态列出 。Git 会在有冲突的文件里加入标准的冲突解决标记,可以通过它们 来手工定位并解决这些冲突。可以看到此文件包含类似下面这样的部 分:
Git分支-一个例子

现在让我们来看一个简单的分支与合并的例子,实际工作中大体也会 用到这样的工作流程:
1. 开发某个网站。 2. 为实现某个新的需求,创建一个分支。 3. 在这个分支上开展工作。

假设此时,你突然接到一个电话说有个很严重的问题需要紧急修补, 那么可以按照下面的方式处理:
1. 返回到原先已经发布到生产服务器上的分支。 2. 为这次紧急修补建立一个新分支,并在其中修复问题。 3. 通过测试后,回到生产服务器所在的分支,将修补分支合并进来,然后再推送到生产服务 器上。 4. 切换到之前实现新需求的分支,继续工作。
Git分支-一个例子

这次,Git 没有简单地把分支指针右移,而是对三方合并后的结果重 新做一个新的快照,并自动创建一个指向它的提交对象(C6)。这个 提交对象比较特殊,它有两个祖先(C4 和 C5)。
值得一提的是 Git 可以自己裁决哪个共同祖先才是最佳合并基础;这 和 CVS 或 Subversion(1.5 以后的版本)不同,它们需要开发者手 工指定合并基础。所以此特性让 Git 的合并操作比其他系统都要简单 不少。

Git培训

Git培训

Tag管理
tag(标签)
一个ref指向一个标签或提交对象。与 head 相反,标 签并不会在一次提交操作后改变。标签(不是标签对 象)存储在$GIT_DIR/refs/tags/。 一个标签通常是用 来标识提交家族链(commit ancerstry chain)里的某 一点。
参考资料 /zh/branching/#tag
和svn cvs相比 有下面的好处:
如遇服务器宕机,整个协同工作无法进行,因为此 时无法进行代码更新提交,当然也不能checkout最 新代码
如果服务器数据丢失,整个版本数据也将丢失,除 非刻意为版本管理服务器备份
而git可以方便地在本地进行版本管理,就如同 在你本地有一个版本管理服务器一样。你可以 选择在合适的时候将本地版本推送到统一的版 本管理服务器。
分支 创建分支 git branch <name> git branch <name> <commit-id> 删除分支 git branch -d <name> 查看分支 git branch git branch -r” //remote branch 转动某一分支 git checkout <commit-id> git checkout -b <name> <commit-id> 分支合并 git merge <name> //合并指定的分支到当前分支
revert
还原一个版本的修改,必须提供一个具体的Git版本号,例如'git revert bbaf6fb5060b4875b18ff9ff637ce118256d6f20'
区别
reset是指将当前head的内容重置,不会留任何痕迹。 revert是撤销某次提交,但是这次撤销也会作为一次提交进行保存。

git培训

git培训
清除代码回退,sha1代码需要回退到的版本的commit ID $git reset --hard <SHA1>
清除回退,保留本地修改 $git reset --soft <SHA1>
删除提交 git revert <SHA1>
查询记录的SHA1 $git reflog
GPIO
./kernel-3.10/tools/dct/DrvGen.exe
./vendor/mediatek/proprietary/factory/dct/DrvGen.exe
./bootable/bootloader/pre
./bootable/bootloader/lk/scripts/dct/DrvGen.exe
从clone库提交修改,需把本地库切换到tmp分支 $git checkout tmp
从clone库提交
查看修改$git status
$git add *
$git commit -m "sssss"
$git push
以UI查看提交记录 $qgit
查看修改log信息,显示版本SHA1 $git log --oneline -3
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
./bootable/bootloader/preloader/custom/hq8127

git使用培训ppt课件

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 讲座

git 讲座

git-daemon
启动一个简单的git服务,来跟其他的人共享代码
apt-get install git-daemon-run apt-get remove git-daemon-run vi /etc/sv/git-daemon/run --verbose --export-all --base-path= /opt/share/android-server-icp / \ --enable=upload-pack --enable=upload-archive --enable=receive-pack (代码仓库目录:/opt/share/android-server-icp)
显示当前的状态。 重命名文件或者文件夹。 删除文件或者文件夹。 查看帮助
分支操作
详情请查看”git 使用笔记“
查看本地和远程分支
git branch git branch -a
本地分支操作
git checkout vmc_g //进入 vmc_g 分支 git checkout -b tao_vmc_g //以 vmc_g 为源创建分支 tao_vmc_g git checkout tao_vmc_g //进入 tao_vmc_g 分支 //修改代码 git commit -am " ******** " //只是提交到本地分支上
对于拥有SHELL 权限的SSH 登录帐号,可以直接用下面的git 命令访问,例如: $ git clone <username>@<server>:/path/to/repo.git repo init -u git@10.0.13.244:/opt/share/android-server-icp/platform/manifest.git git push git@10.0.13.244:/opt/share/android-server-icp/vimicro/bsp/vivante_drv_new.git
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Version 3
Version 2
计算机B 版本库
Version 3
检出
Version 2
file
Version 1
Version 1
协作模式
• 锁定模型 • 冲突合并模型
常用术语
• 分支(Branch): 在一个时间点,复制一份处于版本 控制之下的文件,从这之后,这两份拷贝就可以 独立的互不干扰的进行各自开发。
检出 file
计算机A 版本库
Version 3
Version 2
计算机B 版本库
Version 3
检出
Version 2
file
Version 1
Version 1
GIT文件存储
第二部分 GIT 基础
版本库结构
Tortoisegit设置
创建版本库
版本库:repository 创建方法
• 取出(Check-out): 一次“取出”,就是在本地创建 一份仓库的工作拷贝。
• 提交(Commit): 一次“提交”,将本地的修改写回 到仓库或合并到仓库。
• 冲突(Conflict): 当开发者们同时提交对同一文件 的修改,而且版本系统不能把它们合并到一起, 就会引起冲突,就需要人工来进行合并。
文件状态
未跟踪:处于工作目录,但未 被版本库管理的文件
已跟踪:已被版本库管理的文 件,可能存在于工作目录,也 可能不存在于工作目录中
工作区
版本库
版本管理
GIT文件状态
GIT文件
已被版本库管理的文件
已修改
在工作目录修改GIT文件
已暂存
对已修改的文件执行git暂存 操作,将文件存入了暂存区
Version 2
Version 1
集中式版本管理
版本库:版本服务器
VCS:
Version Control System 又称CVCS(Central VCS) 有SVN、CVS、firefly等产品
问题:
服务器会停 网络会不通
计算机A
检出 file
计算机B 检出 file
版本服务器
版本库 Versionห้องสมุดไป่ตู้3
常用版本管理介绍
常见的版本管理软件
简称 CVS VSS SVN
全名 Concurrent Versions System Micorosoft Visual SourceSafe Subversion
Git TFS Mercurial ClearCase Perforce
Team Foundation Server IBM Rational ClearCase

GIT设计目标
快速
高效 存储
满足大 规模项 目需要
简单
完全 分布
GIT工作模式
版本库初始化
个人计算机从版本服务器同步
版本服务器 版本库
Version 3
操作
Version 2
90%以上的操作在个人计算机 添加文件
Version 1
修改文件
提交变更
查看版本历史等
版本库同步
将本地修改传送 到版本服务器
• 合并(Merge): 合并就是把所有对文件的修改统一 到文件里
• 仓库(Repository): 仓库就是当前的和历史的处于 版本控制之下的文件所在的地方,通常在服务器 端。
• 工作版本(Working copy):从档案库中取出一 个本地端的复制,所有在档案库中的档案更动, 都是从一个工作版本中修改而来的,这也是这名 称的由来。
Version 2
Version 1
分布式版本管理
版本库
版本服务器 个人计算机
VCS:
又称DVCS(Distributed VCS) 有GIT、HG、bazaar等产品
版本服务器 版本库
Version 3
Version 2
Version 1
问题:
乱成一团? 分支管理机制
检出 file
计算机A 版本库
已提交
将已暂存的文件执行git提交 操作,将文件存入对象库
工作区
修改文件
暂存区
对象库
检出文件
暂存文件
提交文件
本地版本库与服务器版本库(一)
本地计算机
检出
版本库
file
Version 3
Version 2
Version 1
② git add、commit…
本地计算机
版本库
file
Version m
Version …
Version 1

git pull
版本服务器 版本库
Version 3 Version 2 Version 1
版本服务器 版本库
Version m Version … Version 1
远程协作(一)
创建文件Readme.txt 使用git add命令添加Readme.txt 使用git commit提交Readme.txt至本地版本库xt 使用git push保存Readme.txt到服务器版
GIT介绍
Git的诞生
• 2002年以前 – Linus个人以diff方式管理
• 2002年至2005年 – BitMover公司的BitKeeper
• 2005年以后
– Linus两个月开发出Git
Git的发展
• 大部份开源软件



执行git init
示例
工作目录: E:\Repositories\GIT\RCMSDem o
在工作目录中点击鼠标右键 .git目录
版本库:暂存区和对象库
第一个提交
创建文件Readme.txt 使用git add命令添加Readme.txt 使用git commit提交Readme.txt
GIT使用培训
谭宗威 2014-07-29
欢迎
今天的内容概述
1 版本管理的作用 2 常用版本管理介绍 3 版本管理的工作模式 4 Git介绍 5 Git日常工作模式
学习目标
• 版本管理的作用 • 掌握日常的操作 • 团队协作
版本管理的作用
为什么要版本管理?
文件管理
历史追踪
团队协作
冲突管理
版本发布
版本管理的工作模式
发展过程
健壮性
单机版(文件 系统,RCS)
分布式(Git、 Mercurial)
集中式(CVS, SVN)
灵活性
本地版本管理
版本库:个人电脑/服务器
RCS:
Revision Control System 可追踪修改历史
问题:如何协作?
检出 file
本地计算机
版本库 Version 3
修改文件
修改Readme.txt 使用git add命令添加Readme.txt 使用git commit提交Readme.txt
克隆版本库
示例
版本服务器:gitserver 版本服务器用户:gitusr 版本库:RCMSDoc 本地目录:F:\git
文件状态a
工作区
工作目录:.git文件夹所处目录
相关文档
最新文档