0.在git官网上下载git对应的适配系统版本

进入到需要管理的目录,打开git终端

1.git相关的基础命令:

git init
在当前文件夹下创建一个.git的隐藏文件夹,初始化版本控制器
注:不要同一目录下多个位置初始化,他可以管理当前目录下所有文件(包括子级目录)
git status
查看Git当前状态,如:那些文件被修改过、那些文件还未提交到版本库等。
git add 文件名
将指定文件添加到版本库的暂存状态。
git commit -m '提交信息'
将暂存区的文件提交到版本库的分支。
第一次提交会要求配置email和name:
git config --local user.name 'sakura'
git config --local user.email 'you@example.com'
git log
查看提交记录,即:历史版本记录
git reset --hard 版本号
可以在log中查看版本号,并回滚到指定的版本
注:如果回滚后又想回滚到回滚之前的状态,这时候得使用git reflog,然后再git reset --hard 版本号

git revert 版本号 可以取消git log中的提交记录

2.stash

stash的应用场景:
如果在开发一个新功能时正开发了一半,发现以前的旧功能中存在bug,急需去修改bug,那么这个时候为了避免新功能造成干扰可以先将新开发的代码存储到临时文件夹中
git stash
将当前工作区所有修改过的内容存储到“某个地方”,将工作区还原到当前版本未修改过的状态
git stash list
查看“某个地方”存储的所有记录
git stash clear
清空“某个地方”
git stash pop
将第一个记录从“某个地方”重新拿到工作区(可能有冲突)
git stash apply 编号
将指定编号记录从“某个地方”重新拿到工作区(可能有冲突)
git stash drop 编号
删除指定编号的记录

3.branch

branch称为分支,默认仅有一个名为master的分支。
一般开发新功能流程为:开发新功能时会在分支dev上进行,开发完毕后再合并到master分支。
如果在开发的途中出现了bug,那么可以在master分支上开启一个bug分支,修复完成后使用merge来合并master与bug分支
新功能开发完成后再将dev分支与master分支进行合并
git branch 分支名称
创建分支
git checkout 分支名称
切换分支
git branch -m 分支名称
创建并切换到指定分支
git branch
查看所有分支
git branch -d 分支名称
删除分支
git merge 分支名称
将指定分支合并到当前分支
注:同样可以完成合并操作的还有rebase,它能使分支更加的简洁,美观

4.将项目上传到远程仓库

例如: github
git remote add origin(别名) https://github.com/louyifei8888/test.git
git push origin master
将本地的master分支推到github上
git push origin dev
将本地的dev分支推到github上
git clone https://github.com/louyifei8888/test.git
从github上克隆一份项目,默认获取到的只有master分支
git branch dev origin/dev
创建dev分支并导入远程origin中的dev分支同步
git pull origin dev
从远程GitHub仓库获取dev分支最新内容,并合并到本地
注:git pull origin dev 相当于执行了两步
第一步:git fetch origin
第二步:git merge origin/分支 或 git rebase origin/分支

5.协同开发的三种方式

1.项目合作者
2.创建组织,邀请成员(拥有修改组下所有项目代码的权利)
3.fork(fork到自己的仓库修改完成后new pull request,会给写项目的管理人员发送一条通知)

git命令及远程仓库操作内容整理的更多相关文章

  1. Git(进击学习:远程仓库操作)-V3.0

    1.查看当前的远程仓库:git remote或git remote -v 2.添加远程仓库:git remote add [shortname] [url] git remote add pb git ...

  2. (超详细)使用git命令行将本地仓库代码上传到github或gitlab远程仓库

    (超详细)使用git命令行将本地仓库代码上传到github或gitlab远程仓库 本地创建了一个 xcode 工程项目,现通过 命令行 将该项目上传到 github 或者 gitlab 远程仓库,具体 ...

  3. git多个远程仓库

    1. 前言   用GitHub管理自己的开源项目有几年了,最近一年更新得比较多,仓库也越来越多越来越大.有时候感觉GitHub太慢,尤其是最近感觉更为明显,于是萌生了再找个国内类似GitHub的代码托 ...

  4. git指令-添加远程仓库

    git指令-添加远程仓库 首先在GitHub上创建属于你自己的远程仓库:例如我创建的远程仓库mybatis用于我最近保存的mybatis代码 目前,在GitHub上的这个learngit仓库还是空的, ...

  5. git如何删除远程仓库的某次错误提交

    git如何删除远程仓库的某次错误提交 如果远程仓库,能ssh访问,那就跟本地没什么区别   reset命令有3种方式   git reset --mixed 此为默认方式,不带任何参数的git res ...

  6. 解决git push至远程仓库失败的问题

    产生问题的原因: 远程仓库存在本地不存在的文件, 一个常见的例子是创建repository时勾选了README.md, 但此时本地还没有这个文件, 就会导致本地文件无法同步到远程仓库的问题. 解决方法 ...

  7. [gitHub实践] git基础:远程仓库的使用

    [gitHub实践] git基础:远程仓库的使用 版权2019.6.2更新 git 基础 远程仓库的使用 git remote # 查看远程仓库 $ git remote # 克隆的仓库服务器默认名字 ...

  8. Myeclipse如何使用自带git工具向远程仓库提交代码(转)

    Myeclipse如何使用自带git工具向远程仓库提交代码 第一步:将改动的代码标记 项目右键:team->synchronize workspace 点击确定 项目右键>add to g ...

  9. git关联github远程仓库的问题

    git关联github远程仓库的时候,报fatal: remote origin already exists. 导致这个问题原因可能是之前关联的时候关联错了,再次关联就不行了. 解决办法是: 1.将 ...

随机推荐

  1. Spring的bean管理(注解方式)

    注解:代码中的特殊标记,注解可以使用在类.方法.属性上面,使用注解可实现一些基本的功能.注解的写法是@注解名称(属性=属性值). 使用注解创建对象 第一步,创建Web项目,引入Spring的开发包 第 ...

  2. 【Java】NO.80.Note.1.Java.1.001-【Java 各种特性概念】

    1.0.0 Summary Tittle:[Java]NO.80.Note.1.Java.1.001-[Java 各种特性概念] Style:Java Series:Java Since:2018-0 ...

  3. 好的封装 vs 好的复用

    好的封装 vs 好的复用好的封装 一个封装相对较好的体现和实现方式如下:内部类的方式来组织代码,不需要外面的类指导我内部的类. 好的复用一个好的复用的体现和实现方式如下:可以通过搭积木的方式来组织功能 ...

  4. centos上部署应用到tomcat

    tomcat部署JavaWeb项目分为下面的步骤: 1.删除tomcat按照目录的ROOT文件夹下的所有文件 2.把war包复制到ROOT文件下面,解压缩:jar -xvf xxxx.war; 3.结 ...

  5. phpcms首页替换

    大图轮播替换 {pc:content action="lists" catid="13" order="id DESC" num=" ...

  6. mysql日期操作

    一.获取当前日期时间 1.1.获得当前日期+时间(date+time)函数:now() 1.2.获取当前日期+时间(date+time)函数:sysdate() 注:二者类拟,不同在于now()在执行 ...

  7. P3371 【模板】单源最短路径(弱化版)(Dijkstra算法)

    题目描述 如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度. 输入输出格式 输入格式: 第一行包含三个整数N.M.S,分别表示点的个数.有向边的个数.出发点的编号. 接下来M行每行包含三 ...

  8. 编辑器之神---vim

    1. 不是在命令模式下时:yy   -----复制光标所在的这一行              p  ----粘贴      dd  -----剪切光标所在的行 D ---从当前的光标开始剪切,一直到行 ...

  9. MyBatis注解方式批量插入操作

    @Insert({ "<script>", "insert into table_name(column1, column2, column3) values ...

  10. Determine YARN and MapReduce Memory Configuration Settings

    Determine YARN and MapReduce Memory Configuration Settings https://docs.hortonworks.com/HDPDocuments ...