Git仓库的工作分区
工作区到暂存区的操作
git init :在当前文件夹创建一个文档库,自动产生一个master分支。当当前文件夹已有文档库时,不会再次创建也不会修改,只会将隐藏的.git文件夹显示出来
添加到暂存区
$ git add . all *(文件名,.号为全部)//添加到暂存区
查看暂存区的内容
$ git status //查看暂存区的内容
从暂存区撤回
git reset HEAD -- 文件名
暂存区到历史区的操作
暂存区的数据到历史区必须提交对应的信息(用户名及邮箱)
git config user.name 名 --global git config user.email 邮箱号 --global
$ git remote add origin 
绑定仓库地址 到这里会提示你输入账号密码,这里的账号密码就是你远程仓库的登录密码
 
提交对应的暂存区文件到历史区 (暂存区就没有了)
git commit 文件名
提交简化写法 不需要进vi
git commit 文件名 -m 备注信息
全部提交
git commit .
vi编辑器 三种模式
阅读模式 (不能编辑的 插入模式返回阅读模式 按esc)
插入模式 按i 都能进行对应的插入模式(就可以进行编辑)
命令行模式 (按对应的: 进入命令行 后面接的是对应的指令 wq 保存并退出)
 
查看版本库的信息
git log
 
 
历史区数据是不能撤回的 但是它可以回滚数据来影响对应的暂存区和工作区
 
git分支管理
分支的增删查改
git branch:查看当前所有分支
git branch 要创建的分支名称: 从最新的commit创建一个新的分支
git branch -m 新的分支名称:将当前分支名称修改为新的分支名称
git branch -d 分支名称:删除分支。如果存在未合并的内容,会报错
git branch -D 分支名称: 强制删除分支
 
切换分支 
git checkout 分支名称:切换分支
git checkout -b 新分支名称:创建新的分支后自动切换到该分支。相当于先执行git branch 再执行git checkout
git checkout -b 新分支名称 commit 节点标识符或标签:从指定节点创建新的分支后自动切换到该分支
合并分支
方法一
git merge 分支名称A:将分支名称A合并到当前工作的分支
git merge --no-ff 分支名称:合并时留下合并记录。
git merge --abort:合并过程中发成冲突时,使用此命令可以放弃合并。git 文档库和文件夹的内容都会恢复到未合并前的状态
方法二 
git rebase 分支名称A:将当前工作的分支B移动到分支A中,然后再切换到分支A中,执行 git rebase 分支B,此时没有冲突的情况分支A和分支B的内容一致
 
git checkout 分支A
git merge master
以上两个命名是将master的内容合并到分支A。当master分支和分支A在持续更新时,还需要再次将master分支修改的内容合并到分支A。此时这种情况是正常的状态,但是commit节点演进图就比较复杂,我们可以使用rebase指令:
把另一个分支的修改运用到当前的分支,等当前分支开发完成后再使用merge指令合并
git checkout 分支A
git rebase master
当然rebase命令也可能出现冲突。出现冲突是要不使用git rebase --abort恢复到未执行rebase之前的状态。要不就是解决冲突后使用 git add 和gitrebase --continue 继续执行rebase操作。rebase 仅适用于当前分支仅限于自己使用,否则会出现和其他人文档库数据不一致的情况
 
git远程仓库
  • git remote add:添加远程仓库
  • git remote:查看当前的远程仓库
  • git fetch、git pull:提取远程仓仓库
  • git push:推送到远程仓库
  • git remote rm:删除远程仓库
git pull :从远程git文档库中取回当前分支的最新数据,并且将远程git文档库的分支合并到本地git文档库的分支
添加远程仓库,起名为film,并查看
提取远程仓库数据
合并并提交
删除仓库
目前我常用的工作流程是
1、使用git clone 复制一个文档库到本地
2、然后时候git checkout -b 新的分支名称 创建一个属于自己的分支
3、然后进行修改删除文件后先使用git add 、git commit 将我们的修改提交到本地文档库中
4、然后使用git push -u 分支名称:将我们的分支内容同步到远程git 文档库中
5、在git上提交合并请求,当我们分支的内容合并到主分支上
6、在自己的分支上执行git pull  主分支名称  将主分支的内容合并到自己的分支中

git(新)的更多相关文章

  1. Git 新项目关联到远程仓库

    最近前端学到小有成果,准备写一个新项目放在githup,结果没有提前在仓库创建项目,现在我把写好的项目推送到远程gitHup 1.先初始化本地仓库 Git init : 这样在项目里面都创建了一个隐藏 ...

  2. Git新技能-stash操作

    最近开发的工期非常紧迫,一直在忙各种杂七杂八的事情,负责人都还没有创建好测试环境, 所以代码也不能部署.可是项目经理催促开发进度又催得很急,新的开发需求必须在指定的时间内 完成,我们只得想办法去克服困 ...

  3. git新克隆代码的时候ssh协议

  4. idea 拉取git新分支

    前面的话: 一不小心,删除了dev的分支,没办法.头头重新克隆了下,但是发现idea的右下角并没有啊,我记得之前遇到过一次 但还是忘记如何操作了,在这记录下,省的下次还得去百度 选中项目-git-fe ...

  5. [原创]git使用入门

    创建git项目并初始化 建立一个新文件夹,然后将该文件夹定义为git项目 Lilis-MacBook-Pro:GitDir lili$ mkdir testgit Lilis-MacBook-Pro: ...

  6. git digest

    .gitignore文件示例: .classpath .project .idea/ .settings/ target/ *~ *.iml *.log *.tmp https://zhuanlan. ...

  7. 批量修改git仓库地址脚本

    前言   公司的代码都存放在自己搭建的gitlab上面.之前由于老板升级gitlab.导致下面有个叫做"api"的groups无法访问.通过无所不能的谷歌才知道.在gitlab在某 ...

  8. git修改远程仓库关联

    公司搬移, 作为git仓库的服务器IP地址变了. 本地代码挺多,重新检出太占时间,可以修改一个什么配置让我本地仓库和新的远程仓库建立关联吗, 答案是肯定的! 方法有很多,这里简单介绍几种: 以下均以项 ...

  9. Git远程仓库地址变更本地如何修改

    以项目test为例: 老地址:http://192.168.1.1:9797/john/test.git 新地址:http://git.xxx.xxx/john/test.git 远程仓库名称: or ...

随机推荐

  1. BACnet MS/TP转MQTT网关金鸽BL103

    BACnet MS/TP转MQTT网关金鸽BL103BL103是一款BACnet路由器,实现 BACnet MS/TP 总线和以太网 BACnetIP 之间通信路由功能,同时也是一款Modbus RT ...

  2. tcp协议传输中的粘包问题

    什么是粘包问题 tcp是流体协议. 其nagle算法会将数据量较小. 并且发送间隔时间较短的多个数据包合并为一个发送. 网络传输的时候是一段一段字节流的发送. 在接收方看来根本不知道字节流从何开始. ...

  3. GreatSQL重磅特性,InnoDB并行并行查询优化测试

    欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 1 ...

  4. SingleSphere类定义

    针对于单个球体的碰撞,其实和多个球体一样的,只是我修改了书上的代码,定义了这么多类,终于到头了.马上就要展示奇迹的时候了. 类定义: #pragma once #ifndef __SINGLESPHE ...

  5. Luogu2858[USACO06FEB]奶牛零食Treats for the Cows (区间DP)

    我是个傻逼,这么水的题都会T #include <iostream> #include <cstdio> #include <cstring> #include & ...

  6. 如何使用.NET 6的IHostedService和BackgroundService?

    大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进. 本章是<定制ASP NET 6.0框架系列文章>的第七篇.本文内容和定 ...

  7. 第一百篇:JS异步

    好家伙,打工人要打工,博客会更新的没有以前频繁了   芜湖,一百篇了,这篇写一个比较难的异步(其实并不难理解,主要是为promise铺垫)   老样子,先补点基础: 1.进程 来吧,新华字典    大 ...

  8. rh358 003 ansible部署双网卡绑定 DNS原理 bind正向解析

    双网卡绑定 绑定多张网卡成为逻辑口,从而实现链路冗余,以及数据流量的负载均衡 1.创建team口 [root@servera ~]# nmcli connection add type team co ...

  9. 【UML分析、建模与设计】我在工作时遇到UML

    一.前言 UML分析.建模与设计 来自现实世界中的概念的抽象描述方法(摘取自<UML面向对象分析.建模与设计(第2版)>) 就我对UML分析与建模技术的认知,最早可追溯至2019年时的学习 ...

  10. C#实现HTTP访问类HttpHelper

    在项目开发过程中,我们经常会访问第三方接口,如我们需要接入的第三方接口是Web API,这时候我们就需要使用HttpHelper调用远程接口了.示例中的HttpHelper类使用Log4Net记录了每 ...