这里记录一下git平时的常用操作,本文基于安装了git,且有github账号的前提。

一、将本地项目(不是git项目)提交到git上

1.1、采用git clone

先在git上建立一个project,然后本地使用git clone <项目链接地址>  克隆到本地,然后将需要上传到git上的项目全部复制到该文件下,然后采用以下三个命令

git clone 还有一个-b参数 这个参数后面接着分支名称,可直接拉取指定分支代码,不用本地再使用git checkout 《分支名称》来切换分支

1 git add <文件> // 也可以使用路径,如git add ./  代表将当前路径下的所有文件都加入到暂存区
2 git commit -m '提交说明文字'   // 执行完后,暂存区的代码会到本地仓库里去
3 git push    // 执行完后,本地仓库的代码会到远程仓库里

这种方法比较简单

1.2、采用git init

在本地项目中使用git init命令,然后同样采用

git add ./

git commit -m '文字说明'

之后在git上创建一个空的git项目文件夹,然后采用

git remote add origin <git项目链接地址>

git push -u origin master

即可

创建一个空的git项目

如果没在git上创建,则会出现以下情况

当创建后,

此时项目已经到了github上去了。

在这里提个小坑,如果你在github上创建项目的时候勾选了

那么你在push的时候会出现下面一个问题

这是因为,你在github上创建的时候,新建一个readme文件,在我们平时要push项目到git上,都会先git pull一下,在这里也是一样

先使用 git pull --rebase origin master,从git上拉取文件,然后再push,

在这里 git push -u 中的-u参数就是创建远程分支的一个意思

二、合并分支代码

先切换到指定分支,如你要将dev分支代码合并到prd分支,则你只需(记住,最好先git pull,和git status,防止远程有修改和本地有修改情况)

git checkout prd

git merge dev

//  到了这里最重要的是要先检查有没有冲突,有冲突的话,先找到冲突文件,手动解决冲突,解决完后

git add 《文件》或者 转到 最外层目录 采用git add ./

git commit -m '提交说明文字'

git push

如果没有冲突文件,可以直接跳过 git add 和 git commit两个操作

三、版本回退

采用 git log查看提交历史

然后要回退到哪个分支,就复制红框中的字符串,假如这里要回退到第二个红框的所在分支,

git reset --hard <commit id> //r如果回退到 上一个分支 也可以用 git reset --hard HEAD^

git push -f origin master

然后就回退了

四、本地创建新的分支

如 git checkout -b <分支名称>

然后 git push origin <分支名称>

五、放弃本地修改

关于这种情况有三类,一个是本地修改没加入暂存区,第二个是已经修改加入了暂存区,第三个是修改加入了本地仓库

5.1、本地修改没加入暂存区,即没使用 git add命令

采用 git checkout -- fileName 值得注意的是这个文件一定是在git上存在的,对于新增的文件,这个命令没用,不过对于新增的可以直接删除。

如果要退回所有文件修改,则可以 git checkout .  命令,注意后面有一个点。

5.2、本地修改已加入暂存区,即使用了 git add命令,但还没使用 git commit

采用 git reset HEAD fileName  其中fileName为加入到了暂存区的文件,对于新增的也适用,执行完后,修改的内容,并没有立即消失,而是回到了5.1的状态

然后再按照5.1的操作再执行一遍即可,如果要放弃所有修改,则可以使用 git reset HEAD .  命令,注意这里有一个点。

5.3、本地修改已加入了本地仓库

其实这种情况就是类似于版本回退,唯一不同的时候,执行完相应命令不用push

git reset --hard <commit id> //r如果回退到 上一个分支 也可以用 git reset --hard HEAD^

-------------------------------------------------------------------------------------------------------------分界线------------------------------------------------------------------

以上就是全部内容,若有错误或不足之处,还望指正,谢谢!

转载于:https://www.cnblogs.com/qm-article/p/10799623.html

git 常用命令使用相关推荐

  1. 【转载】Git 常用命令大全

    一. Git 常用命令速查 git branch 查看本地所有分支 git status 查看当前状态  git commit 提交  git branch -a 查看所有的分支 git branch ...

  2. Git 常用命令集锦

    文档已储存在 GitHub,这里不再更新校正,请原谅. 远程仓库相关命令 克隆远程仓库:git clone git://github.com/jquery/jquery.git 查看远程仓库:git ...

  3. Git 常用命令速查表(图文+表格)

    一. Git 常用命令速查 git branch 查看本地所有分支 git status 查看当前状态  git commit 提交  git branch -a 查看所有的分支 git branch ...

  4. git常用命令,分支操作,子模块

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) 二. Git 常用 ...

  5. Git常用命令和Git团队使用规范指南

    1. 前言 在2005年的某一天,Linux之父Linus Torvalds 发布了他的又一个里程碑作品--Git.它的出现改变了软件开发流程,大大地提高了开发流畅度,直到现在仍十分流行,完全没有衰退 ...

  6. Java程序员时刻铭记的Git常用命令

    今天动力节点Java学院为大家整理了Java架构师必备Git常用命令清单 工程下载.分支的增删查改 工程下载: clone 远程工程:git clone https://XXXX.git fetch ...

  7. Git常用命令备忘(一) 转载

    Git配置 git config --global user.name "robbin" git config --global user.email "fankai@g ...

  8. git常用命令_10、Git常用命令

    Git常用命令 Git作为我们最常用的版本控制工具,多了解并熟悉一些命令,将能节省很多时间 关于git,首先需要了解几个名词,如下: Workspace:工作区 Index / Stage:暂存区 R ...

  9. Git 常用命令速查表(图文+表格)【转】

    转自:http://www.jb51.net/article/55442.htm 一. Git 常用命令速查 git branch 查看本地所有分支 git status 查看当前状态  git co ...

  10. Git 常用命令和教程

    常用命令:http://hi.baidu.com/sunboy_2050/item/ffab7396672895d11a49dfcc 精简教程:http://lugir.com/git-basic.h ...

最新文章

  1. 解决keepalived脑裂问题
  2. Trip to Saint Petersburg CodeForces-1250 C
  3. codevs 1085 数字游戏 dp或者暴搜
  4. order one question for the 4e4 exploitation
  5. 汽车雷达 -- 车载ADAS常用中英文对照
  6. 创新工场CE0李开复:互联网创业黄金时代来临
  7. linux socket 加锁,Linux使用openssl对socket加密【1】
  8. 破51项国际榜单纪录!解读华为云擎天架构调度求解引擎
  9. kubernetes-dashboard部署
  10. linux服务器端口的状态,Linux查看端口状态及关闭端口方法
  11. cad化气路图_气路图符号cad下载
  12. Pytho爬虫-4567电影网电影信息爬取
  13. Tableau计算同比和环比任意天数据
  14. 5G无线技术基础自学系列 | 新多址接入
  15. 单片机继电器控制实验程序C语言,继电器控制实验
  16. matlab 圣诞树,搞气氛!用MATLAB画一棵Bling Bling的圣诞树
  17. 中国平安产险总经理易人 吴鹏已获保监会核准
  18. Opencv图像特征点提取(
  19. 迷你计算机可玩游戏,迷你电脑小主机打游戏可还行?
  20. python绘制糖葫芦_python用小海龟画糖葫芦

热门文章

  1. twitter storm学习 - 安装部署问题汇总
  2. CSS的未来:游戏的变革Flexbox
  3. 某网络专业人士笔记(超级珍藏)
  4. golang非对称加密
  5. linux命令chmod
  6. mysql服务启动出错:mysql: unrecognized service
  7. lua中的魔法字符转义问题
  8. linux:安装mysql
  9. 【Electron】Error: A dynamic link library (DLL) initialization routine failed.
  10. 独家 | 一文读懂Apache Kudu