• Git最佳实践:基本操作和分支管理


    概述

    GIT是一个开源的分布式的版本控制系统,是由Linus 为了管理Linux内核开发而开发的一个开源的版本控制软件。相比SVN,它采用分布式版本库方式。

    工作区,暂存区和版本库

    640?wx_fmt=jpeg

    左侧为工作区,编辑文件所在的目录,右侧为版本库,其中index区域是暂存区,标记为"master"代表master主分支。

    基本操作指令

    1.创建仓库

    a.当前目录创建仓库

            git init
    

    b.指定目录创建仓库   

            git init 目录名
    

    2.设置配置

    a.全局配置

            git config --global user.name woniu
            git config --global user.email woniu@163.com
    

    b.设置本地仓库配置

            git config --local user.name woniu
            git config --local user.email woniu@163.com
    

    c.查看配置信息

            git config --global --list
    

    3.工作区文件新增到暂存区

    a.提交指定文件

         git add a.cpp
    

    b.提交当前目录所有文件

         git add .
    

    c.把提交过暂存区,已经发生改变的文件再次提交到暂存区

         git add -u
    

    4.暂存区文件提交到版本库

           git commit -m "初始版本"
    

    5.查看git提交日志

    a.全部日志

            git log
    

    b.简化日志

            git log --oneline
    

    c.查看前5个日志

            git log -n5 --oneline
    

    d.查看所有日志

            git log --all
    

    e.图像化查看所有日志

            git log --all --graph 
    

    f.图形化界面查看

            gitk
    

    6.查看上次提交后是否有修改

         git status
    

    7.查看差异

    a.查看工作区与暂存区差异

            git diff
    

    b.查看暂存区与仓库之间的差异

         git diff --cached
    

    c.比较不同commit的差异

            git diff HEAD1 HEAD2
    

    8.清空暂存区,工作区修改

           git reset --hard
    

    9. 删除工作区和暂存区文件

           git rm 文件名
    

    10.重命名文件

            git mv a.cpp b.cpp
    

    11.版本回滚

    a.恢复暂存区和HEAD一致

         git reset HEAD
    

    b.恢复暂存区指定文件与HEAD一致

         git reset HEAD -- 文件名
    

    c.恢复工作区与暂存区一致

         git checkout -- 文件名
    

    d.回退到指定commit,会清楚之后提交的commit

         git reset --hard HEAD
    

    分支管理

    1.创建分支

        a.直接创建
            git branch dev(分支名)
        b.基于某个历史版本创建分支
            git branch dev HEAD
    

    2.查看分支

        git branch -av
    

    3.删除分支

        git branch -d dev(分支名)
    

    4.切换分支

        git checkout dev
    

    5.查看分支差异

        a.查看分支差异
            git diff dev master
        b.查看分支指定文件差异
            git diff dev master -- index
    

    6.本地仓库推送到远端仓库

        a.Git代码托管平台创建仓库
            http地址:https://gitee.com/woniu/git-test.git
        b.本地仓库与远端仓库关联
            git remote add origin https://gitee.com/woniu/git-test.git
        c.如果远端仓库是空的
            git push -u origin master
          一般远端仓库都会有readme文件,解决方案
            git pull --rebase origin master
        d.提交到远程仓库
            git push origin master
    

    7.拉取远程分支

        a.拉取远程分支,默认拉取主分支
            git clone https://gitee.com/woniu/git-test.git
        b.拉取远程指定分支
            git clone -b dev https://gitee.com/woniu/git-test.git
        c.拉取主分支后,基于远端指定分支本次创建新分支
            git branch -av   红色部分代表远端分支
            git branch dev origin/dev  基于远端的dev分支本次创建dev分支
    

    总结

            Git已经成为目前最流行的版本控制工具,一些大公司逐渐从SVN过度到Git,熟练使用Git成为了程序员的必备技能,本篇文章几乎覆盖了常用操作指令,希望对大家有帮助。

    -END-

     近期热文:

    640?wx_fmt=jpeg

  • 相关阅读:
    LeetCode34 Search for a Range
    LeetCode32 Longest Valid Parentheses
    LeetCode33 Search in Rotated Sorted Array
    LeetCode31 Next Permutation
    LeetCode30 Substring with Concatenation of All Words
    LeetCode29 Divide Two Integers
    2016 Multi-University Training Contest 8
    2016 Multi-University Training Contest 9
    Gym 100285G Cipher Message 3
    背包九讲
  • 原文地址:https://www.cnblogs.com/Java-Road/p/11824645.html
Copyright © 2020-2023  润新知