git命令的学习和基本使用
初始化
git init (your_project)
配置
--local 只对当前仓库有效
--global 对当前用户所有仓库有效
--system 对系统登录的所有用户有效
git config --global user.name 'your_name'
git config --global user.email 'your_email@domain.com'
显示config配置
git config --list --local(--global/--system)
提交给git管理
git add
提交变更
git commit -m 'message'
git commit -am 'message'
日志信息
git log
git log --oneline
git log -n(最近几次:eg:n4) --oneline
git log --all(所有分支) --graph(图形化)
查看目录信息
ls -al
拷贝文件
cp 要拷贝的文件 拷贝到的文件位置
重命名文件
git mv 原名字 改变成的名字
清除暂存区的变更
git reset --hard
图形化界面
gitk --all
分离头指针
git checkout 某个commit的值(没有绑定任何分支)
git commit -am 'message' 提交变更
git branch 新分支名(绑定上面的commit) 某个commit的值
查看文件信息
git cat 文件名
git cat-file -t hash值
git cat-file -p hash值
对比差异
git diff 第一个hash值 第二个hash值
删除不需要的分支
git branch -d 分支名
git branch -D 分支名
查看分支信息
git branch -av
修改最近一次commit的message
git commit -amend
修改旧的commit的message(多人协作尽量避免操作)
git rebase -i 改变的commit的父亲hash值
=>
进入编辑界面
=>
把要修改的commit前的pick改成r,保存
把多个连续commit合并成一个
git rebase -i 多个commit的父亲hash值
=>
进入编辑界面
=>
把父commit后的要合并的commit的pick都改成s,保存
!!不连续commmit可在编辑界面调整要合并的commit位置到父commit下合并就行
比较暂存区和HEAD所含文件差异
git diff -cached
比较暂存区和工作区所含文件差异
git diff (文件名)
让暂存区恢复和HEAD一样
git reset HEAD <file>
让工作区恢复和暂存一样
git checkout -- <file>
消除最近几次commit
git reset --hard 要回到的commit位置的hash值
比较分支差异
git diff 分支名 分支名 (文件名)
git diff hash值 hash值 (文件名)
删除文件
git rm 文件名
紧急事件暂停当前任务,暂存stage
git stash
git stash pop/apply(apply不会删除暂存区信息)
连接远程仓库
git remote add (改名,默认origin) 远程地址
git remote -v
拉取远程仓库
git fetch origin master
git merge -h(查看merge命令)
git merge (--allow-unrelated-histories) origin/master
不同人处理不同文件
切换分支
git checkout 分支名 origin/远程分支名(将本地创建的分支与远程分支关联)
git branch -v
1、git fetch origin
2、git merge origin/远程分支名
3、git push
不同人修改同个文件不同区域
1、git fetch origin
2、git merge origin/远程分支名
3、git push
不同人修改同个文件相同区域
git commit....
git push...
出现冲突
git merge 远程分支
git pull
修改冲突位置
git commit -am 'message'
git push
同时变更文件名和内容
git push
出现错误,先
git pull
再git push
同时修改同一个文件文件名
git push
报错
git pull
git报冲突,不对文件修改,自行协商解决
本文由博客一文多发平台 OpenWrite 发布!
git命令的学习和基本使用的更多相关文章
- 程序员必备基础:Git 命令全方位学习
前言 掌握Git命令是每位程序员必备的基础,之前一直是用smartGit工具,直到看到大佬们都是在用Git命令操作的,回想一下,发现有些Git命令我都忘记了,于是写了这篇博文,复习一下~ https: ...
- git 命令的学习
我们在安装好gitlab 之后就是怎么使用它了,这里我选择http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b806 ...
- Git命令行学习积累
1.远程分支拉取到本地 $ git checkout -b develop origin/develop //检出远程的develop分支到本地 2.本地分支推送到远程 $ git checkout ...
- 常用Git命令大全思维导图
开发中代码管理少不了使用Git,对于初学者来说Git命令的学习是一个难过的坎,为了帮助大家记忆并快速掌握Git的基本使用,我把常用的Git命令整理成思维导图,分享给大家. 高清大图在线预览 http: ...
- Git项目协同开发学习笔记1:项目库开发基础git命令
这年头git基本都是项目开发的标配,之前刚好碰到了就花了两天时间系统学习了下.本文内容基本来自以下tutorial:Learn Git(建议直接去看原文,因为这个网站是有更新的).这个是我看过对git ...
- Git命令学习之旅——日志和穿梭版本号
在总结了git命令的基础之后,接下来我们看一下基础的一些进阶内容:删除撤销命令.日志查看命令等 既然有加入文件的功能,那么相相应的肯定有移除文件的功能,命令例如以下:git rm [文件名称] 在输入 ...
- Git学习笔记01--常用Git命令、cmd命令及Git总结性知识
资源:外国网友制作的 Git Cheat Sheet 第二次学习廖雪峰老师的Git教程,学习过程中把教程中涉及到的Git命令及总结性知识记录下来方便二次复习. 知识点 所有的版本控制系统,其实只能跟踪 ...
- 码云配合git入门命令总结学习
目录 码云配合git入门命令总结学习 基本设置 基本命令总结学习 准备工作以及基本思路 基本命令 码云搭建仓库步骤 准备前工作 具体操作方法 远程仓库基本命令 标签相关命令 所有命令总结 基本命令总结 ...
- Git命令行(转用于学习和记录)
Git命令行介绍和使用说明(持续更新) 参见:<Git 中文简体教程> 一. 命令“git”或者“git help”查询常用命令 [add]: “git add”——不但是用来添加不在版本 ...
- GIT命令(急速学习)
用过sourceTree,egit(eclipse中的git插件),最后还是感觉git bash顺手:svn早已经不用: 先上几个原来看过的git 教程--书读百遍,其义自见.多看几篇文章才能总结 ...
随机推荐
- python机器学习——决策树算法
背景与原理: 决策树算法是在各种已知情况发生概率的基础上通过构成决策树来求某一事件发生概率的算法,由于这个过程画成图解之后很像一棵树形结构,因此我们把这个算法称为决策树. 而在机器学习中,决策树是一种 ...
- Vue3注册全局组件
1. Vue3全局组件注册 components文件夹下新建index.js文件,统一引入需要注册的组件 import CustomCheck from "./CustomCheck.vue ...
- scanf 读入 string 注意点
在做题的时候需要读入字符串,但是又不想使用char 数组,于是采用string存储,当时遇到了scanf读取string失败,查阅资料后总结下. scanf是c的标准输入输出流,想要读入string, ...
- Python生态工具
Python内置小工具 1秒钟启动一个下载服务器 在实际工作中,时常会有这样的一个需求:将文件传给其他同事.将文件传给同事本身并不是一个很繁琐的工作,现在的聊天工具一般都支持文件传输.但是,如果需要传 ...
- web自动化测试—Firefox安装与配置
web自动化测试-Firefox安装与配置 下一步 下一步 下一步 下一步 下一步 下一步 下一步 下一步 下一步设置不更新 下一步添加插件 下一步 下一步 下一步 下一步立即重启 下一步查看插件 在 ...
- nodejs mongo数据库连接、查询、显示
初学nodejs,涉及内容太多,总找不到如何能处理数据之间的交换.提取,显示.查找众多资料,终于调试成功,为免遗忘,特记录如下: 安装nodejs,mongo数据库在这里不做记录了. 1.编写serv ...
- 关于 layui 弹出一个 DOM 表单的问题
案例: 假设用 layer.msg 去弹出一个dom表单: 由官方文档可知,应该定义一个div,设置其 id 为某个值,然后写在 content 中: layer弹层组件开发文档 - Layui 但 ...
- 【Linux】虚拟机CentOS 7 磁盘扩容
[Linux]虚拟机CentOS 7 磁盘扩容 在有些时候,自己或者公司开的虚拟机的磁盘在一开始的时候没规划好,或者有磁盘扩容的需求(其实在系统日常运维的时候这个需求时常出现),那么这个时候又该怎么处 ...
- tag 总结
通用的: (((masterpiece))),((best quality)),ultra-detailed,extremely detailed CG unity 8k wallpaper,best ...
- oracle数据库常用操作
1,调整显示格式 col username for a20 col DEFAULT_TABLESPACE for a30 2,查看表空间 select username,default_tablesp ...