笔者是在
http://lib.open-open.com/view/open1328069889514.html 中阅读并且总结,希望大家支持原创。
git中的分支,其实本质上仅仅是个指向commit对象的可变指针。git会使用master作为分支的默认名称。在若干次提交后,你其实已经有了一个指向最后一次提交对象的master分支,它在每次提交的时候都会自动向前移动,如图:
从这张图我们大概就可以看出分支其实就是从某个提交对象往回看的历史。
我们知道,git是通过创建一个新的分支指针来创建一个新的分支的。比如,新建一个testing分支,可以使用如下命令:
git branch testing
这样我们就在当前commit对象上新建了一个分支指针,如图:
我们或许想知道你当前在哪个分支上工作,其实很简单,git保存着一个名为HEAD的特别指针,这个HEAD和其他版本控制系统的HEAD不相同。在git中,它是一个指向你正在工作中的本地分支的指针。运行git branch 命令,仅仅是建立了一个个新的分支,但是不会自动切换到这个分支中去,所以,在这个例子中,我们还在master分支里工作。
要切换到其他分支,可以执行git checkout命令。我们现在转换到testing分支:
git checkout testing
这样,HEAD就指向了testing分支:
下面章节详见
git浅谈分支二http://shenyuc629.iteye.com/blog/1700163
分享到:
相关推荐
Git分支管理策略是软件开发中不可或缺的一个环节,特别是在使用Git作为版本控制系统时。Git因其高效、灵活的分支和合并机制而备受青睐。本文主要探讨了如何有效地管理Git分支,以保持代码库的整洁和团队协作的高效性...
②安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功! ③安装完成后,还需要最后一步设置,在命令行输入: $git config --globaluser.nameYour Name $git ...
1. **版本控制系统**:如Git,用于跟踪代码的每一次更改,使得团队成员可以方便地合并代码。 2. **构建工具**:例如Maven或Gradle,它们负责编译代码、打包应用、运行自动化测试等。 3. **自动化测试**:包括单元...
### 智能运维:浅谈持续集成(CI)、持续交付(CD)与软件测试 #### 一、持续集成(CI) 持续集成(Continuous Integration,简称CI)是一种软件开发实践,它要求团队成员频繁地将他们的代码变更合并到一个共享的主...
《美团点评技术沙龙05 - 浅谈前端工程化》 前端工程化是现代互联网开发中的重要主题,它旨在提高开发效率,优化代码质量,确保软件的可维护性和可扩展性。本文将深入探讨前端工程化的概念、实践方法以及在美团点评...
**技巧30:PS2——再谈提示符** - **知识点**: `PS2` 定义了二次提示符,即输入错误命令时的提示符。 - **应用场景**: 提高交互式命令行的用户体验。 - **示例**: 设置二次提示符为 `> `: ```bash PS2='> ' ``` ...