当前位置:文档之家› git使用培训

git使用培训


本地版本库与服务器版本库(二)
本地计算机 版本服务器 版本服务器
版本库
Version 3 Version 2 Version 1

git pull
版本库
Version 3 Version 2 Version 1
版本库

git push
Version n Version … Version 1
② git add、commit…
git checkout origin/master
推送数据给远程版本库
git push [remote repo name] [branch name]
将本地分支<branch name>推送给<remote repo name>的 <branch name>分支
git push
工作版本(Working copy):从档案库中取出 一个本地端的复制,所有在档案库中的档案更动, 都是从一个工作版本中修改而来的,这也是这名 称的由来。

GIT介绍
GIT设计目标
快速
高效 存储
满足大 规模项 目需要
简单
完全 分布
GIT工作模式
版本库初始化
个人计算机从版本服务器同步
版本服务器 版本库
本地计算机 本地计算机 版本服务器
版本库
Version m Version … Version 1
版本库
Version x Version … Version 1
版本库
Version x Version … Version 1
远程协作(二)
修改Readme.txt 使用git add命令添加Readme.txt 使用git commit提交Readme.txt 使用git pull获取服务器版本库更新 使用git push将Readme.txt保存至版本服务器
关联远程版本服务器
一、方式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到服务器版
本地版本库与服务器版本库(一)
本地计算机 检出 file 版本服务器
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时(执行了git add,
但没有git commit),想丢弃修改, 分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。
场景3:现在,假设你不但改错了东西,还从暂存区提交到了版本库(执行了git add ,git
3、第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。
管理修改
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时, 用命令git checkout -- file。(没有执行git add之前)
如果当前分支为跟踪分支,则推送至其跟踪的远程分支
否则=git push origin,将当前分支推送给origin,在origin上的 分支名称与当前分支名称相同
git pull
本地计算机 版本库 版本服务器
本地分支 master
branch1
远程分支
git merge git merge
修改文件
1、修改Readme.txt文件,新增一行’2018,发发发’ 2、使用 git status命令了解仓库当前的状态 3、$ git diff readme.txt了解文件的更改情况
版本回退
在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,往上100个版本写成HEAD~100。 当你用$ git reset --hard HEAD^回退到’ 修改Readme.txt文件’版本时,再想恢复到’新增团 结、努力’版本,就必须找到’新增团结、努力’的commit id。Git提供了一个命令git reflog 用来记录你的每一次命令: 使用命令git reset --hard commit_id在版本的历史之 间穿梭 要重返未来,用git reflog 查看命令历史,以便确定 要回到未来的哪个版本
6、查看分支git branch 7、查看合并情况git log --graph --pretty=oneline --abbrev-commit
冲突
冲突:修改了两个待合并分支里同一个文件的同一部分(比如同一行)
第四部分
团队协作
远程版本库
管理
git clone <url>:生成一个叫orgin的远程版本库 git remote –v:查看远程版本库信息 git remote add <remote repo name> <url>:指定版本库名字
Version 3 Version 2
Version 1
操作
90%以上的操作在个人计算机 添加文件 修改文件 提交变更 计算机A 查看版本历史等
计算机B 版本库 Version 3 检出
版本库同步
将本地修改传送 到版本服务器
检出 file
版本库
Version 3 Version 2 Version 1
第二部分
GIT 基础
创建版本库
$ mkdir learngit $ cd learngit $ git init
第一个提交
创建文件Readme.txt 使用git add命令添加Readme.txt 使用git commit提交Readme.txt
千万不要使用Windows自带的记事本编辑任何文本文件,推荐使 用sublime、editplus统一使用utf8格式
版本库
Version 3 Version 2 Version 1

git pull
版本库
Version 3 Version 2 Version 1
② git add、commit…
本地计算机 版本服务器
版本库
file Version m Version … Version 1
版本库
Version m Version … Version 1
版本库 master
master
git fetch
branch1 branch2 Branch1 branch2
git checkout master git pull git checkout branch1 git pull
删除远程分支
git push :<remote branch name>
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
路径
.git/refs/remotes/
git push origin master
远程分支
路径
.git/refs/remotes/<remote repo name>/
访问方式
<remote repo name>/<branch name>:origin/master
跟踪分支(tracking branch)

冲突(Conflict): 当开发者们同时提交对同一文件 的修改,而且版本系统不能把它们合并到一起, 就会引起冲突,就需要人工来进行合并。
合并(Merge): 合并就是把所有对文件的修改统 一到文件里


仓库(Repository): 仓库就是当前的和历史的处 于版本控制之下的文件所在的地方,通常在服务 器端。
Version 2 Version 1
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 fetch = git fetch origin 从远程仓库中拉取本地仓库中还没有的数据(所有分支) 需要执行git checkout跟踪远程分支,从而产生本地分支
再谈克隆版本库
git clone <url>
git init <repo name> git remote add origin <url> git fetch origin
1、创建分支:git branch <branch name> 2、切换分支:git checkout <branch name> 3、git checkout -b <branch name>(等于前面两部) 4、删除分支:git branch –d <branch name>
相关主题