温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Git原理和常用命令有哪些

发布时间:2021-06-23 14:52:02 来源:亿速云 阅读:119 作者:chen 栏目:大数据

这篇文章主要介绍“Git原理和常用命令有哪些”,在日常操作中,相信很多人在Git原理和常用命令有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Git原理和常用命令有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一、 前言

        Git是什么

        开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。最开始为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

        从一般开发者的角度来看,git有以下功能:

        1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。

        2、在自己的机器上根据不同的开发目的,创建分支,修改代码。

        3、在单机上自己创建的分支上提交代码。

        4、在单机上合并分支。

        5、把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。

        6、生成补丁(patch),把补丁发送给主开发者。

        7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。

        8、一般开发者之间解决冲突的方法,开发者之间可以使用pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁。

二、Git 原理:

        1. 工作区(Working Directory)

        就是你在电脑里能看到的目录,开发时候所在目录或文件夹。当我们新建目录或者文件夹时的内容都放在工作区。

        2. 版本库(Repository)

        工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。

        Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。大致结构如下:

Git原理和常用命令有哪些

   3. 从工作区如何到暂存区:

        我们把文件往Git版本库里添加的时候,是分两步执行的:

  • 第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区(被版本库索引);

  • 第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

  • 因为我们创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以,现在,git commit就是往master分支上提交更改。

    4. 常见的工作场景如下:

Git原理和常用命令有哪些

三、 常用命令

  • 远程相关:

    git remote add origin git://xxx 关联远程分支,其中origin 为远程仓库的别名

    git remote remove origin 解除分支关联

  • push相关操作:

    git push origin <本地分支>:<远程分支>

    git push -u origin master            // 默认情况下这条语句等价于提交本地的master仓库到远程仓库,并作为远程的master分支

    git push origin test:test              // 提交本地test分支作为远程的test分支

    git push origin test:master         // 提交本地test分支作为远程的master分支

  • pull相关命令

    git pull origin <远程分支>:<本地分支>

    git pull origin next:master         //将远程next分支与本地master分支合并

    git pull origin next                     //将远程next分支与当前所在分支合并

    git pull origin                            //当前分支与远程分支存在追踪关系,git pull就可以省略远程分支名

  •  其他:

    git checkout -b dev                   //创建并切换到dev分支

    git merge dev                            //合并dev分支到当前分支

    git checkout dev                        //切换到dev分支

    git branch dev                            //创建dev 分支

  • 常见场景:

       1.  将此次修改提交到bugfix分支后,也需要提交到dev分支。则切换到dev分支执行以下命令:

        git cherry-pick commitid         //  将某个分支的提交再次在当前分支提交。也可以在同一分支执行

        git cherry-pick commitid1 ..  commitid1        //  将某个分支的commitid1 与commitid1之间的提交再次在当前分支提交。

        2. 在当前分支A修改代码到一半,又需要立马切到另一个分支B解决棘手问题,又不想先提交分支A的代码。如果强制切到B分支,则A分支的修改会被丢弃。使用stash可以将当前修改缓存起来:

        git stash save "xxx"                //给当前缓存内容取名“xxx”,便于记录版本

        注意:默认将暂存和未暂存(被索引)的文件缓存起来。

        git stash list                            //    查看所有缓存内容

        git stash pop/apply                //pop将缓存栈顶弹出并应用到当前分支,apply将缓存栈顶应用到当前分支,不弹出

        git stash pop/apply stash@103        //应用指定缓存内容

        git stash clear                        //  清除所有缓存

        git stash drop stash@104     //删除指定缓存,默认栈顶

四、IntelligJ idea 使用Git

五、Eclipse使用Git

https://my.oschina.net/woniuyi/blog/3103613

到此,关于“Git原理和常用命令有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

git
AI