Git常用命令及常见问题解决
$ mkdir xxx ----创建xxx目录
$ cd learngit ----切到xxx目录下
$ pwd ----查看当前文件所在目录
$ git init ----通过git init命令把这个目录变成Git可以管理的仓库
$ git add xxx ----把xxx文件添加到仓库[或者把所有文件添加到仓库, git add . ]
$ git commit -m
"wrote a readme file" ----把文件提交到仓库,并写上提交说明
$ git status ---- 查看仓库当前的状态
$ git
diff ----查看被修改的文件内容
$ git log
-----显示从最近到最远的提交日志
$ git reset --hard
HEAD^ -----把当前版本“bbb”回退到上一个版本“aaa”
$ git reflog ----用来记录你的每一次命令
$ git checkout -- file -----让这个文件回到最近一次git commit或git add时的状态
$ git remote add origin
git@server-name:path/repo-name.git ----关联一个远程库
$ git push -u origin master ----推送master分支的所有内容
遇到的问题:
解决办法:
ssh -T git@github.com 查看是否有公钥
ssh-keygen -t rsa -C "xxx@xmail.com" 生成公钥 (邮箱是你github注册的邮箱)
切换到当前目录:
bogon:~ yan$ ls -all |
bogon:~ yan$ cd .ssh/ |
bogon:.ssh yan$ ls -al |
bogon:.ssh yan$ cat id_rsa.pub //查看生成的公钥,并复制
|
遇到的问题
解决办法如下:
1、先输入$ git remote rm origin
2、再输入$ git remote add origin git@github.com:[YourGitHubName]/learnaboutgit.git 就不会报错了!
$ git clone git@github.com:yourname/gitskills.git ----克隆一个本地库
$ git checkout -b dev ----创建一个名为dev的分支并切换到dev
$ git branch ----查看当前分支
$ git merge dev ----合并指定的dev分支到当前分支上
$ git branch -d dev ----删除分支dev
$ git log --graph ----查看分支合并图。
$
git merge --no-ff -m "merge with no-ff" dev ----[合并dev分支,--no-ff参数表示禁用Fast forward]
$ git stash list ----把当前工作现场“储藏”起来并查看存储信息
$ git stash apply ----恢复存藏的内容
$ git stash drop ----删除存藏的内容
$ git stash pop ----恢复的同时把stash内容也删了
$ git branch -D feature-vulcan ----强行删除分支feature-vulcan
$ git remote ----查看远程库的信息
$ git remote -v ----显示远程库更详细的信息
$ git checkout -b dev origin/dev ----创建本地dev分支
$ git pull ----把最新的提交从origin/dev抓下来
推送失败,因为你的小伙伴的最新提交和你试图推送的提交有冲突,解决办法也很简单,Git已经提示我们,先用git
pull把最新的提交从origin/dev抓下来,然后,在本地合并,解决冲突,再推送
$ git branch --set-upstream dev origin/dev ----设置dev和origin/dev的链接
$ git push origin master ----推送master分支,推送时,要指定本地分支
$
git branch --set-upstream
dev origin/dev
如果git pull提示“no tracking
information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name
origin/branch-name。
$
git tag <name> ----打一个新标签
$ git tag ----查看所有标签
$ git log --pretty=oneline --abbrev-commit ----找到历史提交的commit id
$ git show <tagname> ----查看标签信息
$ git tag -a v0.1 -m "version 0.1
released" 3628164 ----创建带有说明的标签,用-a指定标签名,-m指定说明文字
$ git tag -s <tagname> -m
"blablabla..." ----可以用PGP签名标签
$ git tag -d v0.1 ----删除标签
$ git push origin <tagname> ----推送某个标签到远程
$ git push origin --tags ----一次性推送全部尚未推送到远程的本地标签
$ git push origin :refs/tags/v0.9 ----删除远程标签
$ git remote rm origin ----删除已有的GitHub远程库
$ git remote add github git@github.com:youname/仓库名.git ----与github远程库关联
$ git remote add gitee git@gitee.com:yourname/仓库名.git ---- 与码云远程库关联
$ git push github master ----推送到GitHub
$ git push gitee master ----推送到码云
$
git config --global alias.st status ----配置简单别名
(转载或复制请标明出处,谢谢!)
Git常用命令及常见问题解决的更多相关文章
- git常用命令图解 & 常见错误
Git 常用命令 基本命令 git clone.这是一种较为简单的初始化方式,当你已经有一个远程的Git版本库,只需要在本地克隆一份 git clone git://github.com/someon ...
- Linux常用命令和常见问题解决<------>第一章
查看文件下面所有的隐藏目录:ls -al ~ ls -al ~ls -a -l ~可以发现三条命令执行结果是一致的,原因:因为ls为命令 后面的参数要以空格来区分,不论几个空格 shell都会视为一体 ...
- DG常用运维命令及常见问题解决
DG常见运维命令及常见问题解决方法 l> DG库启动.关闭标准操作Dataguard关闭1).先取消日志应用alter database recover managed standby data ...
- 项目开发中git常用命令、git工作流、git分支模型
#新建代码库git init # 在当前目录新建一个Git代码库git init [project-name] # 新建一个目录,将其初始化为Git代码库git clone [url] # 下载一个项 ...
- git 常用命令速查
git 常用命令速查 命令速查表 一.克隆项目 把远程仓库上的项目克隆到本地.一般来说项目是有1个或2个分支,主要是做开发和线上的区别.既然所属分支不一样,那命令也会有一点区别.这里假设是有2个分支, ...
- - Git常用命令 基础 总结 MD
目录 目录 Git常用命令 帮助 help 常用操作 初始化 clone init 提交 push 暂存 更新 撤销修改 分支 branch 查看分支 创建分支 切换分支 checkout 删除分支 ...
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- Git 常用命令详解
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- Git 常用命令大全
Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v 添加 ...
随机推荐
- bzoj千题计划177:bzoj1858: [Scoi2010]序列操作
http://www.lydsy.com/JudgeOnline/problem.php?id=1858 2018 自己写的第1题,一遍过 ^_^ 元旦快乐 #include<cstdio> ...
- Python 列表嵌套多种实现方式
#coding=utf-8 list=[] for i in range(1,101): list.append(i) # print(list) tempList=[] newList=[] whi ...
- PHP处理上传文件
HTML中使用type = 'file'类型的表单可以向服务器上传文件: 上传文件的表单必须在form中定义enctyp = 'multipart/form-data': HTML代码如下: < ...
- AngularJS1.X学习笔记13-路由
ThinkPHP框架有路由的概念,看起来路由更多的是后端的事情,Angular怎么也会跑出个路由呢?事实上,Angular是着眼于单页应用的,他的一个应用一般来说是一个页面,你所看到的页面内容的改变, ...
- angular路由守卫
路由守卫是指当用户满足了某些要求之后才可以离开或者进入某个页面或者场景的时候使用.比如说只有当用户填写了用户名和密码之后才可以进入首页,比如说用户离开某个页面时明月保存信息提示用户是否保存信息后再离 ...
- SpringCloud的注解:EnableEurekaClient vs EnableDiscoveryClient
What's the difference between EnableEurekaClient and EnableDiscoveryClient? In some applications, I ...
- python的单元测试
单元测试实际上就是一些"断言"(assert)代码 断言就是判断一个函数或对象的一个方法所产生的结果是否符合你期望的那个结果. python中assert断言是声明布尔值为真的判定 ...
- python基础(常用内容)
python基础(常用内容) 机器数: 一个数在计算机中的二进制表示形式就是机器数. 例如: +3用机器数表示就用<00000011>表示 -3用机器数表示就用<10000011&g ...
- python列表基础操作
Python列表基本操作 记住一句话,叫做顾首不顾尾 首先我们来定义一个列表 name = ["jixuege","dajiba","boduoye& ...
- Ubuntu16.04系统下 解决“无法获得锁 /var/lib/dpkg/lock -open (11:资源暂时不可用)、无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?”的方法
在Ubuntu16.04下安装软件,例如:sudo apt-get install lrzsz时提示: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用) 无法 ...
