zoukankan      html  css  js  c++  java
  • Git命令汇总(基础篇)

    自己用Git有一段时间了,随着项目越来越多,功能分支也随之增加,从简单的基础命令到随心所欲,需要自己不断地去尝试总结,下面来分享一下我的Git使用总结。

    本章基础篇主要讲解一些Git代码提交流程和Git基础命令的使用。

    一、Git版本分支管理

    以下是一个比较基本的分支管理示范,每个公司的项目管理运作不同,分支管理也有各自的特色,但万变不离其宗。

    1) dev分支用于日常开发

    2) 当有新版本需要发布时,把dev代码合并到release分支做集成测试,并等待发布

    3) release分支进入bug修复阶段

    4) 如果在release分支发现bug,那么在release分支进行修改,并使用git cherry-pick把修复bug的commit合并到release分支上

    (cherry-pick与merge不同,它的合并是以commit为单位而非整个branch)

    完成后,release分支上所有代码改动(除版本号之外)都应该已经合到了dev分支上

    5) release分支测试完成后,发布到线上环境

    6) 并且打上tag,合并到master分支上

    7) 如果在线上出现bug,那么在master上hot fix修复

    8) 出现hot fix并修复后,需要重新把hot fix的代码合并到dev以及release分支中去使代码保持一致

      

    二、Git基本命令汇总

    1.查看本地文件状态

    git status  —-查看本地、本地仓库、缓存(stash)的文件修改状态 

    —红色 代表本地工作空间的文件修改

    —蓝色 代表提交到本地仓库中的文件(git add .)

    2.切换版本/覆盖当前修改文件

    git branch - 查看当前版本 

    git branch -a 查看所有版本

    git checkout XXX(版本名)  —-切换到远程库中XXX版本

    git checkout filepath    —覆盖当前修改的文件

    git checkout .           -覆盖当前所有修改文件

    3.从远程库获取最新代码

    git remote -查看远程库名称 

    git remote -v   

    git remote show XXX(远程库名)

    git fetch — 从remote端拉取最新代码

    git pull XXX(远程库名) XXX(分支名)  -把拉取的最新代码跟当前工作空间合并

    git rebase —把远程拉回的代码和本地合并

    4.缓存本地代码

    当要切换到其它版本时,想保存在当前版本修改的文件:在切换前做

    git stash   —-把本地修改过不需要提交的文件放入缓存

    git checkout XXX(版本)   —切换库版本

    切回原来的库,把文件从stash缓存中拿出来

    git stash pop — 从缓存中拉出

    5.提交远程库

    git add .

    git commit -m ''

    git remote 查看远程关联名称

    git push remote的名称 本地master

    6.处理冲突 

    git fetch 拉取最新工程

    git pull XXX(远程库名) XXX(分支名)  -把拉取的最新代码跟当前工作空间合并

    冲突产生后,去工作空间修改后,>>>新代码===老代码<<<,保留最终代码,删除提示符,重新提交。

    7.把本次提交的内容提交到其他分支(比如发布时bug的修改)

    git cherry-pick commitId

    8.建议执行顺序

    git status 查看修改状态

    git checkout filename 放弃某文件的修改。

    git stash 储存修改

    git fetch 拉取最新工程

    git rebase 与本地分支合并

    git stash pop 弹出储存文件,此时新文件可能会与你的文件产生冲突,解决冲突。

    git add filename 添加某个修改文件

    git add . 提交所有加点

    git reset HEAD filename 回滚指定文件,回滚所有加点:"git reset HEAD . "

    git commit -m''

    git push 本地remote远程分支名,本地分支名

    例我的本地分支为master 远程remote 别名为 origin 则提交为git push origin master

    9.切换HEAD

    git reflog --查看HEAD记录

    git reset --hard HEAD^       //切换到之前一个HEAD  

    git reset --hard fad4462      // 切换到某个已经回退的HEAD

    10.刪除 local branch

    git branch -d <branch_name>

  • 相关阅读:
    如何增加学习感悟
    古代到清朝历史及文化
    至少的问题
    两次相遇同一地点
    行测都是选择题总结经验
    DES加密实现的思想及代码
    AES算法
    线性代数中行列与矩阵的联系和区别
    学习phalcon框架按照官网手册搭建第一个项目注册功能
    phpadmin增加使得项目能连接数据库
  • 原文地址:https://www.cnblogs.com/garryfu/p/7985591.html
Copyright © 2011-2022 走看看