使用了一年多的git命令了,昨晚竟然又出现了问题。虽然解决了,不过还是被罚了。。。 总结下自己常用的git命令和遇到的一些坑。

1)常用的命令

1. 从git远程分支clone代码: git clone  gitlab地址代码

2.查看当前分支

git branch

3. 切换分支

git  checkout 分支名

4. 合并代码

git merge 分支名称

5.提交代码

git add -A

git commit -m "注释"

git push origin 分支名

2)特定场景遇到的一些问题

1.回滚到某个分支

1) git log     查看提交的记录

.找到具体需要回滚到那次的

2)git reset --hard  回滚日志id

回滚后强制提交  (如果是受保护的分支是无法回滚的)

3)git push origin 分支名 --force

2.如果冲突过多,只提交自己的分支代码

git log 查看自己的分支提交记录

git cherry-pick 日志id

git add -A

git commit -m "提交内容"

git push origin 分支名  即可

3.查看自己分支是以哪个分支为基准的

git reflog --date=local --all | grep 分支名称

         git reflog show 分支名称
     
        4.如果远程创建好了分支,本地没有。 我曾经用过
        git checkout -b  远程分支名
        这里面有个坑,如果你当前所在的分支 和远程创建的分支 不是同一个分支名,当你 checkout -b 时候会把你本地的分支合并到远程分支上面的。 比如 你在远程创建了一个以master为基准的分支,而在你本地 ,你当前是在dev 分支上面。这个时候 你使用 git checkout -b 分支名,就会出现 你本地的分支是以dev为基准的。你在去pull 远程分支的时候,就会把你本地以dev为基准的分支合并到远程 以master为基准的分支上面。当你合并到其他分支的时候,就会出现特别多的冲突。。。。  
    正确用法是 :远程创建了分支后,先去git pull 下,再去git checkout 分支 
 
 

git用法汇总的更多相关文章

  1. 常用Git命令汇总

    常用Git命令汇总 跟着R哥来到了新公司(一个从硬件向互联网转型中的公司),新公司以前的代码基本是使用SVN做版本控制,甚至有些代码没有做版本控制,所以R哥叫HG做了一次Git分享,准备把公司所有的代 ...

  2. Git命令汇总(补充篇)

    上一篇<Git命令汇总基础篇>总结了使用Git的基本命令,这一篇作为补充主要给大家讲一些平时使用中的技巧和总结 . 学会了这些命令,已经基本解决了使用Git中大部分问题. 1.gitign ...

  3. Git命令汇总(基础篇)

    自己用Git有一段时间了,随着项目越来越多,功能分支也随之增加,从简单的基础命令到随心所欲,需要自己不断地去尝试总结,下面来分享一下我的Git使用总结. 本章基础篇主要讲解一些Git代码提交流程和Gi ...

  4. Linux中find命令的用法汇总

    Linux中find命令的用法汇总 https://www.jb51.net/article/108198.htm

  5. Python Enum 枚举 用法汇总

    Python Enum 枚举 用法汇总 import os import sys if sys.version_info.major + sys.version_info.minor * 0.1 &l ...

  6. C#中DllImport用法汇总

    最近使用DllImport,从网上google后发现,大部分内容都是相同,又从MSDN中搜集下,现将内容汇总,与大家分享. 大家在实际工作学习C#的时候,可能会问:为什么我们要为一些已经存在的功能(比 ...

  7. 常用 Git 命令汇总

    Git 命令汇总 1 Git 的一些通用术语 1.1 Git 的几个区 1.2 如何标识 Git 的某次提交 2 Git 配置 2.1 配置 2.2 读取配置 2.3 与 Beyond Compare ...

  8. git用法之常用命令[克隆、提交]

    1.克隆/下载项目 1)git clone git@git.soydai.cn:liuxuewen/static-file-3.0.git 或者 2)git clone http://git.soyd ...

  9. windows下使用Git命令汇总

    这里只是简单汇总下Git主要命令,方便记忆:汇总的不好,请各位包容,谢谢!想看详细讲解,推荐廖雪峰大神的教程,地址如下:http://www.liaoxuefeng.com/wiki/00137395 ...

随机推荐

  1. svn: E155004: Working copy '/data/www' locked.

    svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details) svn: E155004: Working c ...

  2. ETL工程师笔试题

    1.参考答案 1)建表 CREATE TABLE `ta` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `cx` varchar(20) DEFAULT NUL ...

  3. 洛谷 P1816 忠诚题解

    题目描述 老管家是一个聪明能干的人.他为财主工作了整整10年,财主为了让自已账目更加清楚.要求管家每天记k次账,由于管家聪明能干,因而管家总是让财主十分满意.但是由于一些人的挑拨,财主还是对管家产生了 ...

  4. Kali和Metasploitable2的网络配置

    Kali和Metasploitable2的网络配置 2017年06月19日 16:00:00 weixin_34275734 阅读数 389   原文链接:https://blog.csdn.net/ ...

  5. PHP中的分支及循环语句

    这次实践的都是PHP7的语法. 感觉是以前的5差别不是那么大,只是希望越来越快吧. <?php $looking = isset($_GET['title']) || isset($_GET[' ...

  6. python测试开发django-rest-framework-61.权限认证(permission)

    前言 用户登录后,才有操作当前用户的权限,不能操作其它人的用户,这就是需要用到权限认证,要不然你登录自己的用户,去操作别人用户的相关数据,就很危险了. authentication是身份认证,判断当前 ...

  7. evpp tcp server服务端

    // netserver.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <evpp/tcp_server.h> ...

  8. Linux TTY介绍

    1. TTY介绍 TTY(TeleType)指Linux中的一类终端(Terminal)设备, 是一种字符设备 在Linux中, tty可分为如下几类- 串行端口终端(serial port term ...

  9. MAT022 Foundations of Statistics

    MAT022 Foundations of Statistics and Data Science Summative Assessment 2019/20MAT022 Foundations of ...

  10. node 日志 log4js 错误日志记录

    SET DEBUG=mylog:* & npm start 原文出处:http://blog.fens.me/nodejs-log4js/ 1. 默认的控制台输出 我们使用express框架时 ...