创立版本库

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常用命令汇总的更多相关文章

  1. 20145222《信息安全系统设计基础》Linux常用命令汇总

    学习Linux时常用命令汇总 通过Ctrl+f键可在该网页搜索到你想要的命令. Linux中命令格式为:command [options] [arguments] //中括号代表是可选的,即有些命令不 ...

  2. Oozie命令行常用命令汇总[转]

    Oozie命令行常用命令汇总 有时候脚本跑多了就不愿意在OozieWeb端去看脚本的运行情况了.还好Oozie提供了很多命令行命令.能通过命令行直接检索自己想看到的脚本信息.在这里简单进行一下总结.一 ...

  3. vim常用命令汇总

    vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...

  4. Github 常用命令

    小记一些Github常用命令 : 在一个项目中... 假如要修补问题追踪系统上的 #53 问题.顺带说明下,Git 并不同任何特定的问题追踪系统打交道.这里为了说明要解决的问题,把新建的分支取名为 i ...

  5. 【Linux】Linux 常用命令汇总

    查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpk ...

  6. Linux 使用 github 常用命令

    Linux 使用 github  常用命令 今天整理一下常用的 github 命令,自己只是一个编程小白,有些地方可能做的不是很好,仅仅用作自己的学习使用. 创建一个文件夹用于存放github仓库 m ...

  7. Docker笔记:常用命令汇总

    Docker常用命令汇总 启动服务 [root@localhost ~]# service docker start Redirecting to /bin/systemctl start docke ...

  8. [svc][op]vim常用命令汇总

    vim常用命令汇总: 定位 本行第一个字符 ctrl+$ 本行最后一个字符 0gg 文章首行 ctrl+G 文章行尾 u 撤销(Undo) 删除 D 从当前位置删除到行尾 ("d$" ...

  9. GitHub常用命令及使用

    GitHub使用介绍 摘要: 常用命令: git init 新建一个空的仓库git status 查看状态git add . 添加文件git commit -m '注释' 提交添加的文件并备注说明gi ...

随机推荐

  1. offer(背包问题、DP)

    蒜头君很早就想出国,现在他已经考完了所有需要的考试,准备了所有要准备的材料,于是,便需要去申请学校了.要申请国外的任何大学,你都要交纳一定的申请费用,这可是很惊人的.蒜头君没有多少钱,总共只攒了n万元 ...

  2. SDL实践:产品经理如何驱动产品安全建设

    一.序言 本文从产品经理的角度出发,对产品经理的安全职责.产品驱动安全的内涵.工作内容.工作方法.所需安全资源.以及产品经理的安全工作量进行了分析.希望所有产品经理在没有心理负担的情况下,有目标.有方 ...

  3. Ivory Coast Map

    Fun Facts about Cote d'Ivoire The Republic of Cote d'Ivoire (previously known as the Ivory Coast) is ...

  4. LeetCode——376.摆动序列

    如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为摆动序列.第一个差(如果存在的话)可能是正数或负数.少于两个元素的序列也是摆动序列. 例如, [1,7,4,9,2,5] 是一个摆动序列, ...

  5. zeroc ice log4net 多进程log文件问题

    使用zeroc ice 中的icebox 的时候多服务会有多个服务实例,每个实例都要写日志文件,所以要配置多个日志文件区分开来, 类似这样  orderservice_1_20160101.log   ...

  6. Linux介绍,基本命令

  7. 893C. Rumor#谣言传播(赋权无向图&搜索)

    题目出处:http://codeforces.com/problemset/problem/893/C 题目大意:一个城中有一些关系圈,圈内会传播谣言,求使每个人都知道谣言的最小花费 #include ...

  8. 如何让网站HTTPS评级为A或者A+

    环境说明:CentOS Linux release 7.5.1804 (Core).nginx/1.10.0 需求:公司网站在myssl的评级只得到了B的评分,需要提升至A+ 具体操作如下: 一.ng ...

  9. HDU-6708 Windows Of CCPC(打表,递归)

    http://acm.hdu.edu.cn/showproblem.php?pid=6708 Time Limit: 2000/1000 MS (Java/Others)    Memory Limi ...

  10. 十九、linux--RAID详解

    一.什么是RADI Raid是廉价冗余磁盘阵列,简称磁盘阵列. 运维人员就叫RAID.Raid是一种把多块独立的磁盘(物理磁盘)按不同方式组合起来形成一个磁盘组,在逻辑上看起来就是一个大的磁盘,从而提 ...