github常用命令汇总
创立版本库
mkdir Baidu
cd Baidu
git init
SSH
ssh-keygen -t -rsa -C "TaylorApril947939@gmail"
(在github上new SSH,内容为id_rsa.pub)
添加远程库
(github上新建git仓库,选择REAMDE.md)
git remote add origin git@github.com:TaylorApril/Baidu.git
git push -u origin master
(报错)
git pull --rebase origin master
git push -u origin master
git push origin master
提交(文件名字read.txt)
git add read.txt
(所有文件 git add .)
git commit -m "说明文字"
git push
版本回退
(查看最近到最远提交日志)
git log --prtty=oneline
(回退版本计数:HEAD^上一个版本、HEAD~100上与100个版本)
git reset --hard HEAD^
(回退版本号码:回退版本commit id为3628df)
git reset --hard 3628df
(想要恢复:使用命令记录来找回commit id回退)
git reflog
撤销修改
———> git add files git commit
working directory--------------stage-------------history
<——— git checkout --files git reset --files
删除文件(read.txt)
rm read.txt
(从版本库中删除)
git rm read.txt
git commit -m "delete"
(删错了)
git checkout -- read.txt
分支(分支名字dev)
创建分支:git branch dev
切换分支:git checkout dev
创建+切换分支:git checkout -b dev
查看当前分支:git branch
切换回master分支:git checkout master
合并指定分支到当前分支:git merge dev
(fast-forward 快进模式)
删除分支:git branch -d dev
解决冲突(分支名字fea)
冲突原因:master和Dev同时增长。
git checkout -b fea
(修改Creating a new branch is quick AND simple.)
git add read.txt
git commit -m "fea"
git checkout master
(修改Creating a new branch is quick & simple.)
git addread.txt
git commit -m "master"
(此时形成了master和fea各自指着一个分支)
git merge fea
(合并错误,git status , cat read.txt可以查看)
(修改read.txt的文本内容 Creating a new branch is quick and simple.)
git add read.txt
git commit -m “conf”
(现在master和fea指向同一个人点了,git log可查看合并情况)
git branch -d fea
分支管理策略(--no-ff)(分支名字dev 文件名字read.txt)
git checkout -b dev
git add read.txt
git commit -m "dev"
git checkout master
(注意下个参数--no-ff,表示禁用fast forward)
(fast forward合并看不出曾经做过合并,而--no-ff参数合并后的历史有分支,negative看出曾经做过合并)
git merge --no-ff -m "merge with --no-ff" dev
(查看分支历史 git log --graph --pretty=oneline --abbrev-commit)
bug分支(bugg分支为要解决bug的分支)
思想:当手头还有工作时,先将工作现场git stash(避免bug修复好后将为完成的工作一起提交),然后修复bug、提交之后,在用git stash pop将原来的工作显示在工作区 。
(git status查看状态)
git stash
git checkout -b bugg
(修改bug后)
git add bugg.txt
git commit -m "fixed bug"
git checkout master
git merge --no-ff -m "merge bug" bugg
git branch -d bugg
(接下来回到dev上继续工作)
git checkout dev
(查看工作区git status)
(用git stash list查看)
git stash list
(恢复的第一种方法:恢复的同时把stash内容同时删除)
git stash pop
(恢复的第二种方法:恢复的同时不删除stash内容)
git stash apply
(若使用第二种方法想删除stash则用git stash drop)
(若是多个文件stash 可用git stash apply stash@{0}恢复指定的stash)
feature分支(分支为dev)
(在没完全完成合并时强行删除)
git branch -D dev
多人协作
(查看远程库信息)
git remote
(查看远程库更详细信息)
git remote -v
推送dev分支
git push origin dev
抓取分支
(克隆)
git clone git@github.com:TaylorApril/test.git
(查看能见分支 git branch)
(在dev分支上开发,创建远程origin的dev分支到本地)
git checkout -b dev origin/dev
(修改后,进行提交)
git commit -m "add"
git push origin dev
(在他提交之后你再push的情况时)
(指定本地dev分支与远程origin分支链接)
git branch
git pull
git commit -m "fixed"
git push
报错
报错1
$ git push -u origin master
To git@github.com:TaylorApril/test.git
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'git@github.com:TaylorApril/test.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
解决:
git pull --rebase origin master
git push -u origin master
报错2
$ git checkout master
Switched to branch 'master'
Your branch is ahead of 'origin/master' by 1 commit.
(use "git push" to publish your local commits)
解决:
git push
github常用命令汇总的更多相关文章
- 20145222《信息安全系统设计基础》Linux常用命令汇总
学习Linux时常用命令汇总 通过Ctrl+f键可在该网页搜索到你想要的命令. Linux中命令格式为:command [options] [arguments] //中括号代表是可选的,即有些命令不 ...
- Oozie命令行常用命令汇总[转]
Oozie命令行常用命令汇总 有时候脚本跑多了就不愿意在OozieWeb端去看脚本的运行情况了.还好Oozie提供了很多命令行命令.能通过命令行直接检索自己想看到的脚本信息.在这里简单进行一下总结.一 ...
- vim常用命令汇总
vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...
- Github 常用命令
小记一些Github常用命令 : 在一个项目中... 假如要修补问题追踪系统上的 #53 问题.顺带说明下,Git 并不同任何特定的问题追踪系统打交道.这里为了说明要解决的问题,把新建的分支取名为 i ...
- 【Linux】Linux 常用命令汇总
查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpk ...
- Linux 使用 github 常用命令
Linux 使用 github 常用命令 今天整理一下常用的 github 命令,自己只是一个编程小白,有些地方可能做的不是很好,仅仅用作自己的学习使用. 创建一个文件夹用于存放github仓库 m ...
- Docker笔记:常用命令汇总
Docker常用命令汇总 启动服务 [root@localhost ~]# service docker start Redirecting to /bin/systemctl start docke ...
- [svc][op]vim常用命令汇总
vim常用命令汇总: 定位 本行第一个字符 ctrl+$ 本行最后一个字符 0gg 文章首行 ctrl+G 文章行尾 u 撤销(Undo) 删除 D 从当前位置删除到行尾 ("d$" ...
- GitHub常用命令及使用
GitHub使用介绍 摘要: 常用命令: git init 新建一个空的仓库git status 查看状态git add . 添加文件git commit -m '注释' 提交添加的文件并备注说明gi ...
随机推荐
- 编程作业3.1:Multi-class classification(One-vs-all)
题目: 在本次练习中,你将使用逻辑回归和神经网络来识别手写数字(从0到9). 今天,自动手写数字识别被广泛使用,从识别信封上的邮政编码到识别银行支票上的金额.这个练习将向你展示如何将你所学的方法用于此 ...
- 01 语言基础+高级:1-5 常用API第二部分_day01.【Object类、常用API: Date类、System类、StringBuilder类】
day01[Object类.常用API] 主要内容 Object类 Date类 DateFormat类 Calendar类 System类 StringBuilder类 包装类 java.lang.O ...
- zookeeper注册中心和客户端
1.zookeeper和eureka区别 zookeeper向client进行ping操作,如果不通,就删除client节点 eureka自我保护机制是client向注册中心发送心跳包,如果一定时间内 ...
- Python笔记_第三篇_面向对象_4.单下划线和双下划线
说道这里我们需要稍微暂停一下.前面我们说到了类是作为一个对象存放容器.这个容器里面有属性和方法.最好的理解类的方式就是把类想想成一个容器. 然后构造了一个析构函数和构造函数,然后又对object和se ...
- springBoot中mybatis错误之 Property 'configuration' and 'configLocation' can not specified with together 解决
mybatis.config-location与mybatis.config-locations不同 mybatis.config-location不加载全局配置文件
- Springboot中RestTemplate -- 用更优雅的方式发HTTP请求
RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率. 我之前的HTTP开发是用ap ...
- VUEJS文件扩展名esm.js和common.js是什么意思
vue.js : vue.js则是直接用在<script>标签中的,完整版本,直接就可以通过script引用. vue.common.js :预编译调试时,CommonJS规范的格式,可以 ...
- RedBlack-Tree(红黑树)原理及C++代码实现
众所周知,红黑树是用途很广的平衡二叉搜索树,用过的都说好.所以我们来看看红黑树的是怎么实现的吧. 红黑树顾名思义,通过红与黑两种颜色来给每个节点上色.其中根结点和叶子结点一定是黑色的,并且红色结点的两 ...
- [LC] 1048. Longest String Chain
Given a list of words, each word consists of English lowercase letters. Let's say word1 is a predece ...
- PAT甲级——1002 A+B for Polynomials
PATA1002 A+B for Polynomials This time, you are supposed to find A+B where A and B are two polynomia ...