zoukankan      html  css  js  c++  java
  • git命令行操作

    1、克隆远程仓库 git clone [仓库地址] ,但是这样只能克隆master分支的代码,如果我想克隆远程仓库中某一分支的代码怎么办呢?git clone -b [对应的远程分支名称] [仓库地址] 。

      如克隆aspnetcore的3.0分支:git clone -b 3.0 https://github.com/dotnet/aspnetcore.git

    2、本地切换分支,这里分几种场景:

      1)要切换的分支存在,直接使用 git checkout [要切换的分支]

      2)要切换的分支不存在,git checkout -b [要切换的分支],如本地仓库切换一个新的开发分支,该分支是为了开发数据统计功能,则可以这样切换:git checkout -b feature/data-statistics 【分支命名规范:需求特性开发可以使用feature/..;平时bug修复可以使用bugfix/..;线上紧急bug修复可以使用hotfix/..】

      3)上述切换方式为本地创建分支,该分支没有对应远程分支,若需要对应远程分支,则需要设置 git branch --set-upstream-to=origin/data-statistics data-statistics 。若想在创建分支的时候就对应怎么办呢?可以使用git checkout -b data-statistics origin/data-statistics 。【注:前提是远程仓库有origin/data-statistics分支】

      4)本地分支指定其他远程分支,则可使用 git remote add local_branch https://github.com/dotnet/aspnetcore.git  

    3、比如在本地分支data-statistics上开发结束,需要提交代码合并,分如下步骤:

      1)本地代码暂存 git commit -am “数据统计开发 [ci skip]” 【注:① a表示暂存所有追踪并修改的文件,m表示添加提交信息,这里需要注意当你新增一个文件时直接使用该命令无法暂存,必须使用git add .或者git add [添加的文件]进行添加然后再git commit -m ② 提交信息中出现的[ci skip]是为了跳过当提交到远程仓库的ci/cd过程,若无特殊要求可以忽略】

      2)本地暂存好之后,可以使用git push命令推送至远程仓库,若远程仓库没有该仓库会自动进行创建。【这个步骤是为了确保代码安全,或者共享】

      3)代码合并过程

        a. 远程仓库上提交merge request进行合并【一般情况下,master、staging、test、develop分支都是应该受保护的,也就是本地仓库不能直接push到远程仓库,只能采用远程仓库merge request的方式进行代码合并。】

        b. 本地合并,如要将data-statistics上的代码合并到本地test分支,首先保证data-statistics上的代码已经commit,然后使用git checkout test,【注:这个时候需要注意不是立即合并,而是需要拉取远程仓库Src_Test的最新代码至本地git pull origin test -r,保证本地test代码是最新的】,再使用git merge data-statistics命令进行代码合并。若合并过程中出现冲突,需要在vs或其他你认为方便的工具上解决冲突,再次commit,然后push

        c. 不管是哪种方式,都应该本地解决冲突后再提交,避免线上解决冲突

    4、查询修改了哪些文件

      git status 【注:在commit代码时最好先使用该命令检查下修改了哪些文件】

    5、查询当前分支的日志记录

      git log [--oneline] [--graph] [-10] 显示最新的10条提交记录

    6、本地版本回退到某个指定版本

      1)查询修改记录,获取提交记录的版本id

      2)根据版本id使用 git reset --hard accb136f

      3)若想回退远程仓库的版本,则需要强制回退 git reset --hard accb136f --force

    7、查看本地有哪些分支,可以使用git branch,若想查看所有则可使用git branch -a

      【注:有时候你会发现,明明在git上删除了远程分支,但是在git branch -a的时候仍可以看到,这个时候你可以使用git remote prune origin来进行修剪】

    8、git merge和git rebase可以用来合并代码,但它们使用的场景不同,尤其注意git rebase的使用 

  • 相关阅读:
    jQuery(七) jQuery $(document).ready()和javaScript onload事件
    jQuery(六) jQuery修改class属性和CSS样式
    jQuery(五) jQuery操纵DOM元素属性 attr()和removeAtrr()方法使用详解
    jQuery(四) jQuery操作DOM元素
    jQuery(三) jQuery选择器
    jquery(二) jQuery选取和操作元素的特点
    jquery(一) DOM对象与jQuery对象的转换与区别
    fastclick插件使用 移动端点击延时问题
    移动端click事件300毫秒延时解决
    返回顶部
  • 原文地址:https://www.cnblogs.com/az4215/p/12941510.html
Copyright © 2011-2022 走看看