配置:

首次安装完git后,需要配置信息

检查配置:

git修改: 

git config --global user.name "Your_username"    重新设置git 
      git config --global user.email "Your_email"

生成公钥和私钥 ssh-keygen -t rsa -C “your_email@example.com”

  id_rsa.pub就是公钥文件

git区域:

工作目录    (git add .)后到    暂存区   (git commit -m '注释')到  git版本库

状态:

使用git status 查看状态

未追踪   (Untracked)

已修改   (modified)

已暂存   (staged)

已提交 (committed)

git status -sb    可以查看冲突的文件,前面有UU标志的就是冲突文件

操作:

1.提交:git commit -m '提交'

git log 查看历史commit的记录

查看下一行内容:回车键或方向键下键

查看上一行内容:y键或方向键上键

查看下一页内容:空格键或PageDown键

查看上一页内容:b键或PageUp键

退出查看:q键

修复式提交:git commit --amend 后会进入编辑模式  :wq保存并退出

优点:不增加新的提交版本情况下,追加到前一次的提交中

2.删除 git rm      在git commit -m ''之后,不想push到远程的文件

git rm 文件     仓库和工作区中删除指定文件(注意:会删除记录和本地文件)

git rm -r 文件夹      git rm和git rm -r慎用!!!,会删除本地

下面两个会经常用到,不会删除本地!!

git rm --cached 文件   只删除仓库中的文件(就是会恢复到未被git add 追踪前)

git rm -r --cached 文件夹  只删除仓库中的文件夹()

注意:上面所有操作后后一定已在提交一次git commit -m '',记录

    3.回退版本 git reset    在git add后,取消追踪

           git reset HEAD 文件名  撤销某一个文件

git reset HEAD .   从暂存区撤销所有文件

特别提醒及注意!!!下面代码会清除本地修改,并且会删除git log指定版本号后面的的版本记录,慎用!!

                   git reset --hard HEAD^ 最近的一次版本

                   git reset --hard 指定版本号     版本号可通过git log查询

不小心用了上面两个,还有解决办法:对于没有commit 就没办法解决

                           1.git reflog 查看所有版本记录

                                

2. 使用 git reset HEAD@{x}    x就是你恢复的版本号,但是恢复后是删除的状态,文件还是没有出现在本地

                           3.使用 git checkout .  放弃本地修改,就会取消删除,文件就会恢复到本地

工作常用流程:

1.git pull 拉取代码 ---->2.git add . 提交本地 3. git commit -m '' 4 git push

git pull 拉取分支:

拉取指定分支到当前本地分支:git pull origin 远程分支名

拉取指定分支到指定本地分支:git pull origin 远程分支名:本地分支名

拉取时,代码冲突方法

1.git stash 保存本地代码版本
2.git pull 更新代码
3. git stash pop 合并冲突代码
4. 本地修改
5. 然后进行git add . 等等一系列操作

查看分支:

git branch  ;查看本地分支

git branch -r  ;查看远程分支

git fetch --all ;  更新本地分支,例如同事B新增一个分支,更新后,本地也能获取

新建分支:

1. git checkout -b yxy 建立分支,并切换 相当于执行git branch yxy 和git checkout yxy两个命令
git branch yxy 创建分支
git checkout yxy 切换分支

2. git push origin yxy 创建和切换完成后需要将新的分支发送到仓库保存

3. git branch --set-upstream-to=origin/yxy yxy 远程分支的名字 本地分支的名字 将远程分支和本地分支建立联系,才能Push代码

合并分支:

//假设当前是master分支
git merge origin/dev 将dev分支代码合并到master分支
合并分支时出现Please enter a commit message to explain why this merge is necessary(请输入提交消息以解释为什么需要合并)
直接按esc 然后输入:wq

删除分支:先要切换至其它分支

git branch -d 分支名称    如果分支没有合并,则不能删除

git branch -D 分支名称   强制删除

git push origin --delete 分支名称 删除远程仓库分支

git fetch --all  更新本地分支情况

git stash用法:当前开发未完成时,需要切换其它分支

将git add . 暂存区的代码删除并缓存起来

git stash 和git stash save 'xxx' 效果一样

git stash list 获取缓存列表

拉取指定的git stash pop stash@`{1`}缓存列表项

也可以使用git stash pop apply stash@`{1`}

pop和 apply 区别:pop会删除list里面的记录,而apply不会

git合并commit 提交记录

这篇文章写的很详细 https://blog.csdn.net/qq_39253370/article/details/124277214

esc   q 退出  i编辑  wq保存 大写ZZ也是保存

git 合并分支的某一个commit代码  git cherry-pick <commit_id>

将一个分支上某个commit合并到另一个分支

例:将dev分支的commit_id 未d54sada55qw5dsadqw8ddf5ef5dasd合并到master分支

1.切换master分支

2.执行cherry-pick命令

3.git push

退回到合并之前 git cherry-pick --abort

git 的基础使用的更多相关文章

  1. git学习基础教程

    分享一个git学习基础教程 http://pan.baidu.com/s/1o6ugkGE 具体在网盘里面的内容..需要的学习可以直接下.

  2. Git入门基础详情教程

    前言 写了一篇文章<一篇文章了解Github和Git教程>还觉得不错,继续写了<为了Github默默付出,我想了解你>,那么继续写Git 基础知识. Git 官网:https: ...

  3. Git使用基础篇

    Git使用基础篇 前言 Git是一个分布式的版本控制工具,本篇文章从介绍Git开始,重点在于介绍Git的基本命令和使用技巧,让你尝试使用Git的同时,体验到原来一个版 本控制工具可以对开发产生如此之多 ...

  4. Git使用基础篇(zz)

    Git使用基础篇 您的评价:          收藏该经验       Git是一个分布式的版本控制工具,本篇文章从介绍Git开始,重点在于介绍Git的基本命令和使用技巧,让你尝试使用Git的同时,体 ...

  5. Mac下Git的基础操作

    目前最火的版本控制软件是Git了吧,今天简单梳理一下Mac下Git的基础操作~~ 一.什么是Git Git是一个分布式代码管理工具,用于敏捷的处理或大或小的项目,类似的工具还有svn. 基于Git的快 ...

  6. Mac 下 Git 的基础命令行操作

    Mac 下 Git 的基础命令行操作 sudo apt-get install git-core //安装Git 用户配置 git config --global user.name "Yo ...

  7. Git及基础命令的介绍以及如何向本地仓库添加文件

    在介绍Git的使用之前,我们得要先来了解一下Git.那么什么是Git? Git是一个版本管理工具(VCS),具有以下的特点: 分布式版本控制: 多个开发人员协调工作: 有效监听谁做的修改: 本地及远程 ...

  8. Git Bash基础使用(初始化)

    前提是在码云上已经新建一个空的项目,可参考:https://www.cnblogs.com/babysbreath/p/9170455.html 1.新建一个目录,存放下载下来的项目,我在D盘新建了一 ...

  9. git的基础使用

    GIT """ 什么是git:版本控制器 - 控制的对象是开发的项目代码 代码开发时间轴:需求1 > 版本库1 > 需求2 > 版本库2 > 版本 ...

  10. Git 实用基础(配置,建库,提交,推送 GitHub)

    Git 实用基础(配置,建库,提交,推送 GitHub) SVN ? Git ? 目前市面上主流的版本控制系统就是 SVN 和 Git . 两者的区别简单通俗地说就是,版本数据是否有在本地. 如果觉得 ...

随机推荐

  1. vue使用echarts引入离线地图(geo.json)并切换省市(以四川为例)

    https://blog.csdn.net/weixin_43374193/article/details/95594419 https://blog.csdn.net/harrisonz8/arti ...

  2. [OpenCV实战]31 使用OpenCV将一个三角形仿射变换到另一个三角形

    目录 1 什么是仿射变换? 2 使用OpenCV进行三角形仿射变换 2.1 定义输入和输出 2.2 计算边界框 2.3 裁剪图像和更改坐标 2.4 计算仿射变换矩形 2.5 应用仿射变换到三角形 2. ...

  3. java基础篇——异常

    异常的三种类型 1.检查型异常:通常是由用户错误或者问题引起,是程序员无法预见的,例如用户要打开一个不存在的文件... 2.运行时异常:最有可能被程序员忽略的异常,可以在编译时被忽略,例如无限递归调用 ...

  4. 使用阿里云产品搭建PHPWIND

    2.4 安装PhpWind论坛网站 1.     本小节主要是在ECS云主机中快速安装PhpWind论坛网站的基础环境. 2.     远程登录到 PhpWind 主机服务器 ECS实例.请使用本实验 ...

  5. Docker 基础 - 2

    容器操作系统类型 Busybox 集成了一百多个最常用 Linux 命令和工具的软件工具箱. 包含cat echo grep find mount telnet 等 Busybox 是Linux 系统 ...

  6. BC7-牛牛的字符矩形

    题目描述 牛牛尝试用键盘读入一个字符,然后在屏幕上显示用这个字符组成的 3*3 的矩形. 输入描述 一行读入一个 char 类型的字符. 输出描述 输出这个字符组成的 3*3 矩形. 示例 1 输入: ...

  7. 【学习笔记】开源库之 - sigslot (在解决浅拷贝问题的基础上增加信号拦截功能)

    前言说明 在文中<[学习笔记]开源库之 - sigslot (提供该库存在对象拷贝崩溃问题的解决方案)>已经介绍过 sigslot ,此文主要应用在实际的工作项目中时,发现会有拦截信号的需 ...

  8. vue学习笔记(五)---- vue动画

    官方文档:https://cn.vuejs.org/v2/guide/transitions.html 一.使用过度类名 没有使用动画之前: <body> <div id=" ...

  9. Linux之ssh远程连接

    Linux之ssh远程连接 一.下载远程连接工具Xshell Xshell是一种远程连接工具,可用来远程连接虚拟机. Xshell免费版下载地址 输入名字和邮箱,可以在邮箱看到下载Xshell的链接. ...

  10. 【学习日志】volatile关键字的作用

    消除指令重排序 保证了不同线程对变量进行操作时的可见性,cpu对变量值修改后,其他线程读取变量信息时从内存读取而非cpu缓存