git使用培训_第1页
git使用培训_第2页
git使用培训_第3页
git使用培训_第4页
git使用培训_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Git使用培训,钦州市友加信息科技有限公司,欢迎,学习目标,版本管理的作用 掌握日常的操作 团队协作,版本管理的作用,为什么要版本管理?,协作模式,锁定模型 冲突合并模型,常用术语,分支(Branch): 在一个时间点,复制一份处于版本控制之下的文件,从这之后,这两份拷贝就可以独立的互不干扰的进行各自开发。 取出(Check-out): 一次“取出”,就是在本地创建一份仓库的工作拷贝。 提交(Commit): 一次“提交”,将本地的修改写回到仓库或合并到仓库。 冲突(Conflict): 当开发者们同时提交对同一文件的修改,而且版本系统不能把它们合并到一起,就会引起冲突,就需要人工来进行合并。 合并(Merge): 合并就是把所有对文件的修改统一到文件里 仓库(Repository): 仓库就是当前的和历史的处于版本控制之下的文件所在的地方,通常在服务器端。 工作版本(Working copy):从档案库中取出一个本地端的复制,所有在档案库中的档案更动,都是从一个工作版本中修改而来的,这也是这名称的由来。,Git介绍,GIT设计目标,版本服务器,版本库,GIT工作模式,版本库初始化 个人计算机从版本服务器同步 操作 90%以上的操作在个人计算机 添加文件 修改文件 提交变更 查看版本历史等 版本库同步 将本地修改传送 到版本服务器,Version 3,Version 2,Version 1,计算机A,版本库,Version 3,Version 2,Version 1,计算机B,版本库,Version 3,Version 2,Version 1,file,检出,file,检出,GIT文件存储,git status git add/rm Git commit m Git push origin master git pull origin master git fetch origin master git merge origin master,第二部分 GIT 基础,创建版本库,$ mkdir learngit $ cd learngit $ git init,第一个提交,创建文件Readme.txt 使用git add命令添加Readme.txt 使用git commit提交Readme.txt,千万不要使用Windows自带的记事本编辑任何文本文件,推荐使用sublime、editplus统一使用utf8格式,修改文件,1、修改Readme.txt文件,新增一行2018,发发发 2、使用 git status命令了解仓库当前的状态 3、$ git diff readme.txt了解文件的更改情况,版本回退,在Git中,用HEAD表示当前版本,上一个版本就是HEAD,往上100个版本写成HEAD100。 当你用$ git reset -hard HEAD回退到 修改Readme.txt文件版本时,再想恢复到新增团结、努力版本,就必须找到新增团结、努力的commit id。Git提供了一个命令git reflog用来记录你的每一次命令:,使用命令git reset -hard commit_id在版本的历史之间穿梭 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本,工作区与缓存区,1、learngit文件夹就是一个工作区(Working Directory),隐藏目录.git,这个不算工作区,而是Git的版本库(Repository), 2、Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD 3、第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区; 第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。,管理修改,场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时, 用命令git checkout - file。(没有执行git add之前) 场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时(执行了git add,但没有git commit),想丢弃修改, 分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。 场景3:现在,假设你不但改错了东西,还从暂存区提交到了版本库(执行了git add ,git commit m 命令),怎么办呢?可以使用版本回退, git relog git reset -hard HEAD或者 git reset -hard commit_id,管理删除,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,关联远程版本服务器,一、方式1 1、在本地git init 新建版本库 2、在远程新建版本数据库关联远程 3、关联git remote add origin 项目地址 4、推送git push -u origin master到远程版本服务器 二、方式2 1、在远程新建版本数据库关联远程 2、git clone 项目地址 本地目录(可以默认不写),远程协作(一),创建文件Readme.txt 使用git add命令添加Readme.txt 使用git commit提交Readme.txt至本地版本库xt 使用git push保存Readme.txt到服务器版,本地计算机,版本库,Version m,Version ,Version 1,file,本地版本库与服务器版本库(一),版本服务器,版本库,Version 3,Version 2,Version 1,本地计算机,版本库,Version 3,Version 2,Version 1,file,检出,git add、commit,git push,git pull,版本服务器,版本库,Version m,Version ,Version 1,版本服务器,版本库,Version x,Version ,Version 1,本地计算机,版本库,Version m,Version ,Version 1,本地版本库与服务器版本库(二),版本服务器,版本库,Version 3,Version 2,Version 1,本地计算机,版本库,Version 3,Version 2,Version 1,git add、commit,git push,git pull,版本服务器,版本库,Version n,Version ,Version 1,git push,git pull,本地计算机,版本库,Version x,Version ,Version 1,远程协作(二),修改Readme.txt 使用git add命令添加Readme.txt 使用git commit提交Readme.txt 使用git pull获取服务器版本库更新 使用git push将Readme.txt保存至版本服务器,GIT常用命令,获得版本库 git init git clone 版本管理 git add git rm git commit 远程协作 git pull git push,查看信息 git help git log git diff,第三部分 分支管理,分支,1、创建分支:git branch 2、切换分支:git checkout 3、git checkout -b (等于前面两部) 4、删除分支:git branch d 5、合并分支 git merge 6、查看分支git branch 7、查看合并情况git log -graph -pretty=oneline -abbrev-commit,冲突,冲突:修改了两个待合并分支里同一个文件的同一部分(比如同一行),第四部分 团队协作,远程版本库,管理 git clone :生成一个叫orgin的远程版本库 git remote v:查看远程版本库信息 git remote add :指定版本库名字 路径 .git/refs/remotes/ git push origin master,远程分支,路径 .git/refs/remotes/ 访问方式 /:origin/master 跟踪分支(tracking branch) git checkout / git checkout b /,从远程版本库抓取数据,git fetch remote repo name git fetch = git fetch origin 从远程仓库中拉取本地仓库中还没有的数据(所有分支) 需要执行git checkout跟踪远程分支,从而产生本地分支,再谈克隆版本库,git clone git init git remote add origin git fetch origin git checkout origin/master,推送数据给远程版本库,git push remote repo name branch name 将本地分支推送给的分支 git push 如果当前分支为跟踪分支,则推送至其跟踪的远程分支 否则=git push origin,将当前分支推送给origin,在origin上的分支名称与当前分支名称相同,本地计算机,版本库,master,branch1,git pull,版本服务器,版本库,master,branch1,branch2,本地分支,远程分支,master,Branch1,branch2,git fetch,git merge,g

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论