Git
Git学习
Mirst
W.
展开
-
Git 二十 多人协作
当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin。 要查看远程库的信息,用git remote: $ git remote origin 或者,用git remote -v显示更详细的信息: $ git remote -v origin git@github.com:michaelliao/learngit.git (fetch) origin git@github.com:michaelliao/le转载 2020-10-02 22:37:17 · 94 阅读 · 0 评论 -
Git 十九 Feature分支
软件开发中,总有无穷无尽的新的功能要不断添加进来。 添加一个新功能时,你肯定不希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能,最好新建一个feature分支,在上面开发,完成后,合并,最后,删除该feature分支。 现在,你终于接到了一个新任务:开发代号为Vulcan的新功能,该功能计划用于下一代星际飞船。 于是准备开发: $ git switch -c feature-vulcan Switched to a new branch 'feature-vulcan' 5分转载 2020-10-02 22:37:48 · 73 阅读 · 0 评论 -
Git 十八 Bug分支
软件开发中,bug就像家常便饭一样。有了bug就需要修复,在Git中,由于分支是如此的强大,所以,每个bug都可以通过一个新的临时分支来修复,修复后,合并分支,然后将临时分支删除。 当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,当前正在dev上进行的工作还没有提交: $ git status On branch dev Changes to be committed: (use "git reset HEAD <file&g转载 2020-10-02 22:38:50 · 49 阅读 · 0 评论 -
Git 十七 分支管理策略
通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。 如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。 下面我们实战一下--no-ff方式的git merge: 首先,仍然创建并切换dev分支: $ git switch -c dev Switched to a new branch 'dev' 修改readme.txt文件,并提交一个新的commit:转载 2020-10-02 22:39:34 · 204 阅读 · 0 评论 -
Git 十六 解决冲突
Table of Contents 小结 人生不如意之事十之八九,合并分支往往也不是一帆风顺的。 准备新的feature1分支,继续我们的新分支开发: $ git switch -c feature1 Switched to a new branch 'feature1' 修改readme.txt最后一行,改为: Creating a new branch is quick AND simple. 在feature1分支上提交: $ git add readme.txt $ gi转载 2020-10-28 19:16:07 · 242 阅读 · 0 评论 -
Git 十二 远程仓库
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了。 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Git有什么特别的地方。 没错,如果只是在一个仓库里管理文件历史,Git和SVN真没啥区别。为了保证你现在所学的Git物超所值,将来绝对不会后悔,同时为了打击已经不幸学了SVN的童鞋,本章开始介绍Git的杀手级功能之一(注意是之一,也就是后面还有之二,之三……):远程仓库。 Git是分布式版本控制系统,同一个转载 2020-10-02 22:34:57 · 68 阅读 · 0 评论 -
Git 十一 删除文件
Table of Contents 小结 在Git中,删除也是一个修改操作,我们实战一下,先添加一个新文件test.txt到Git并且提交: $ git add test.txt $ git commit -m "add test.txt" [master b84166e] add test.txt 1 file changed, 1 insertion(+) create mode 100644 test.txt 一般情况下,你通常直接在文件管理器中把没用的文件删了,或者用rm命令删了:转载 2020-09-30 20:46:57 · 179 阅读 · 0 评论 -
Git 十 撤销修改
自然,你是不会犯错的。不过现在是凌晨两点,你正在赶一份工作报告,你在readme.txt中添加了一行: $ cat readme.txt Git is a distributed version control system. Git is free software distributed under the GPL. Git has a mutable index called stage. Git tracks changes of files. My stupid boss still pref转载 2020-09-28 09:44:32 · 121 阅读 · 0 评论 -
Git 九 管理修改
Table of Contents 小结 现在,假定你已经完全掌握了暂存区的概念。下面,我们要讨论的就是,为什么Git比其他版本控制系统设计得优秀,因为Git跟踪并管理的是修改,而非文件。 你会问,什么是修改?比如你新增了一行,这就是一个修改,删除了一行,也是一个修改,更改了某些字符,也是一个修改,删了一些又加了一些,也是一个修改,甚至创建一个新文件,也算一个修改。 为什么说Git管理的是修改,而不是文件呢?我们还是做实验。第一步,对readme.txt做一个修改,比如加一行内容: $ cat转载 2020-09-25 13:13:36 · 173 阅读 · 0 评论 -
Git 八 工作区和暂存区
Table of Contents 小结 Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。 先来看名词解释。 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区: 版本库(Repository) 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。 Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以转载 2020-09-25 13:10:43 · 173 阅读 · 0 评论 -
Git 七 版本回退
现在,你已经学会了修改文件,然后把修改提交到Git版本库,现在,再练习一次,修改readme.txt文件如下: Git is a distributed version control system. Git is free software distributed under the GPL. 然后尝试提交: $ git add readme.txt $ git commit -m "append GPL" [master 1094adb] append GPL 1 file changed转载 2020-09-25 13:06:19 · 126 阅读 · 0 评论 -
Git 七 分支管理
Git 分支管理 几乎每一种版本控制系统都以某种形式支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。 有人把 Git 的分支模型称为必杀技特性,而正是因为它,将Git从版本控制系统家族里区分出来。 创建分支命令: git branch (branchname) 切换分支命令: git checkout (branchname) 当你切换分支的时候,Git 会用该分支的最后提交的快照替换你的工作目录的内容, 所以多个分支不需要多个目录。 合并分支命令..转载 2020-10-28 19:24:25 · 187 阅读 · 0 评论 -
Git 六 时光穿梭机
Git 基本操作 Git 的工作就是创建和保存你项目的快照及与之后的快照进行对比。 本章将对有关创建与提交你的项目快照的命令作介绍。 Git 常用的是以下 6 个命令:git clone、git push、git add、git commit、git checkout、git pull,后面我们会详细介绍。 说明: workspace:工作区 staging area:暂存区/缓存区 local repository:或本地仓库 remote repository:远程仓库 一个简单的.原创 2020-09-25 13:04:03 · 177 阅读 · 0 评论 -
Git 五 创建仓库
Git 创建仓库 本章节我们将为大家介绍如何创建一个 Git 仓库。 你可以使用一个已经存在的目录作为Git仓库。 git init Git 使用git init命令来初始化一个 Git 仓库,Git 的很多命令都需要在 Git 的仓库中运行,所以git init是使用 Git 的第一个命令。 在执行完成git init命令后,Git 仓库会生成一个 .git 目录,该目录包含了资源的所有元数据,其他的项目目录保持不变(不像 SVN 会在每个子目录生成 .svn 目录,Git 只在仓库...原创 2020-09-25 12:55:29 · 133 阅读 · 0 评论 -
Git 四 工作区、暂存区和版本库
Git 工作区、暂存区和版本库 基本概念 我们先来理解下 Git 工作区、暂存区和版本库概念: 工作区:就是你在电脑里能看到的目录。 暂存区:英文叫 stage 或 index。一般存放在.git目录下的 index 文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。 版本库:工作区有一个隐藏目录.git,这个不算工作区,而是 Git 的版本库。 下面这个图展示了工作区、版本库中的暂存区和版本库之间的关系: 图中左侧为工作区,右侧为版本库。在版本库中标记...转载 2020-09-25 12:47:48 · 92 阅读 · 0 评论 -
Git 三 工作流程
Git 工作流程 本章节我们将为大家介绍 Git 的工作流程。 一般工作流程如下: 克隆 Git 资源作为工作目录。 在克隆的资源上添加或修改文件。 如果其他人修改了,你可以更新资源。 在提交前查看修改。 提交修改。 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。 下图展示了 Git 的工作流程: ...转载 2020-09-25 12:46:08 · 103 阅读 · 0 评论 -
Git 二 安装配置
Git 安装配置 在使用Git前我们需要先安装 Git。Git 目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行。 Git 各平台安装包下载地址为:http://git-scm.com/downloads Linux 平台上安装 Git 的工作需要调用 curl,zlib,openssl,expat,libiconv 等库的代码,所以需要先安装这些依赖工具。 在有 yum 的系统上(比如 Fedora)或者有 apt-get 的系统上(比如 Debian .原创 2020-09-25 12:45:27 · 284 阅读 · 0 评论 -
Git 一 简介
Git 教程 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。 Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。 Git 与 SVN 区别 Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。 如果你是一个具有使用 SVN 背景的人,你需要做一定的思想原创 2020-09-25 12:43:17 · 150 阅读 · 0 评论 -
Git 零 目录
Git 快速入门 本站也提供了 Git 快速入门版本,你可以点击Git 简明指南查看。 入门后建议通过本站详细学习 Git 教程。 Git 完整命令手册地址:http://git-scm.com/docs PDF 版命令手册:github-git-cheat-sheet.pdf 相关文章推荐 1、Git 五分钟教程 2、Git GUI使用方法 3、Github 简明教程 5、互联网组织的未来:剖析GitHub员工的任性之源 ...原创 2020-09-25 12:42:31 · 274 阅读 · 0 评论