1、初次本地git连接远程仓库,并提交代码到远程仓库

第一步 码云上创建仓库

第二步 在需要上传的项目处右键--》git bush here

第三步  初始化本地git库

git init

设定本机用户名,绑定邮箱,让远程服务器知道机器的身份

git config --global user.name "hviger"
git config --global user.email "hviger@qq.com"

输完上面的命令,文件夹中会出现一个.git文件夹

第四步 添加远程仓库,将本地仓库和远程仓库连接起来

git remote add origin https://gitee.com/hviger/ruoyi.git

第五步 添加文件,将本地文件添加到本地仓库

添加全部文件 git add . 或者 git add --all<注意git和add中间有个空格>

添加特定文件使用git add 文件名称<添加多个文件可以重复使用这个或者看下面的这个>

添加多个文件使用git add 文件名称 文件名称 文件名称<中间使用空格隔开>

第六步 创建提交,将文件提交至缓存区

git commit -m '本次代码提交的说明'

第七步 进行代码合并,将本地仓库和远程仓库合并

由于开始创建仓库的时候使用了README初始化仓库,本地没有readme文件,此时本地仓库与远程仓库不同步,所以使用以下命令合并仓库

git pull --rebase origin master

第八步 推到远程代码库

git push -u origin master
git push -u origin master -f (加-f是强制提交)
git push origin master --force //git本地强制覆盖远程

需要注意的是,在push的时候会弹出输入你的用户名和密码正确后才可以。如果推不上去,可能是库的权限问题。

2、再次提交更改

第一步:使用 git add . 

git status         ---- 查看当前本地文件信息,会显示本地修改了哪些文件
git branch         ---- 查看当前分支 提交代码之前一定要看清分支!!!

git rm ss.txt ---- 删除本地代码库文件
git rm -r aaa ---- 删除本地代码库文件夹

第二步:使用 git commit -m "第二次提交"

第三步:避免代码冲突,推送前习惯性先同步代码:git pull origin master ,代码冲突解决方法

第四步:使用 git push origin master 推送至远程仓库

3、远程代码更新到本地,从远程仓库获取代码并合并本地的版本

方式一:
git status(查看本地分支文件信息,确保更新时不产生冲突)
git pull(更新远程代码到本地)
git pull <远程主机名> <远程分支名>:<本地分支名>
git pull origin
git pull origin master:brantest //将远程主机 origin 的 master 分支拉取过来,与本地的 brantest 分支合并。
git pull origin master //如果远程分支是与当前分支合并,则冒号后面的部分可以省略。
方式二:(git pull = git fetch + git merge,这样可能会产生冲突,需要手动解决。)
git fetch --all        //将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中。
git fetch orgin master //将远程仓库的master分支下载到本地当前branch中
git log -p master ..origin/master //比较本地的master分支和origin/master分支的差别
git merge origin/master //进行合并

也可以用以下指令:
git fetch origin master:tmp //从远程仓库master分支获取最新,在本地建立tmp分支
git diff tmp //将当前分支和tmp进行对比
git merge tmp //合并tmp分支到当前分支
git远程覆盖本地,有时候同一个分支,远程的和本地的都被修改的面目全非了,如果想要把本地的替换成远程的,用下面的命令:
git fetch --all
git reset --hard origin/master (这里master要修改为对应的分支名)
git pull
扩展
git branch //查看分支
git branch -a     //查看本地和远程的所有分支
git chechout dev //切换分支dev
git branch dev //创建dev分支
git chechout -b dev //本地创建 aaa分支,同时切换到aaa分支。只有提交的时候才会在服务端上创建一个分支

删除本地分支
# 会在删除前检查 merge状态(其上游分支或者与head)
git branch -d 分支名
# 直接删除,不检查
git branch -D 分支名

删除远程分支(把本地的删除仓库 push 到远程)
git push origin --delete 分支名

清理本地不存在的分支,如别人删除了dev,但是本地查看还有,就可以执行该条命令
git remote prune 仓库地址

git remote rename new-origin old-origin 重命名远程代码仓库标签
第一次拉取仓库代码提交README.md文件
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

4、强制还原本地

回退上一个版本,撤销工作区中所有未提交的修改内容,将暂存区与工作区都回到上一次版本,并删除之前的所有信息提交

git reset --hard origin/master   // 注意后缀master代表远程分支

撤销本地所有的更改操作还原到更改前的代码,只需要一个命令(*号代表所有更改的文件):

git checkout -- *

 5、git 提交,文件名大小写的修改提交不上去

git 默认对文件名的大小写敏感

但是会在仓库克隆或初始化时,根据当前系统来设置是否忽略大小写

比如 Windows 下会设置为 true → 不区分大小写,而 Linux 中为 false;

git config core.ignorecase false  // 可使用此命令来查看你的 git 是否对文件名大小写敏感:为 true 则不敏感,为 false 则敏感

解决方法一:文件重命名命令

git mv test.txt TEST.txt  // 将 test.txt 重命名为 TEST.txt

但是如果重命名文件夹 ,直接使用上述命令会报错,可以如下这样迂回修改:

git mv test-dir tmp   // 使用 tmp 做一下中间转换 (tmp可以随意起哈)

git mv tmp TEST-DIR

解决方法二:

把待改名的文件先剪切到其他文件夹内 → 提交代码 →  然后再剪切到原本的目录下 → 提交代码。

解决方法三:(不建议)

可执行以下命令更改 git 设置,使其区分文件名的大小写。【 但是不建议使用,还是默认系统的配置好。这种操作会导致远程仓库有问题。】

git config core.ignorecase false

然后正常提交代码,修改会被识别为 untracked 类型的变更,如果直接推送到远程的话,那么远程仓库会同时存在大小写两个版本的文件(本地一切正常)

git rm -r --cached 文件名  // 删除提交到本地仓库的文件

git add .   // 重新将文件添加至本地仓库

git使用教程及常用命令的更多相关文章

  1. Git简易教程(常用命令)

    本文章参考了Pro Git 1 Git简介 Linux内核开源项目有着众多参与者,为了提高开发效率,项目组于2002年开始启用分布式版本控制系统BitKeeper来管理和维护代码.在BitKeeper ...

  2. Git使用教程及常用命令大全

     一.git命令名词解释1.添加/跟踪/暂存:添加到本地索引       git add 文件名2.提交:提交到本地仓库       git commit -m '注释'3.推送:将提交到本地仓库的所 ...

  3. git日常使用的常用命令总结

    git日常使用的常用命令总结 git 是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常 ...

  4. 图解git中的最常用命令

    图解git中的最常用命令 Git命令参考手册(文本版) git init                                                  # 初始化本地git仓库(创 ...

  5. ###Git 基础图解、分支图解、全面教程、常用命令###

    一.Git 基础图解 转自:http://www.cnblogs.com/yaozhongxiao/p/3811130.html Git 图解剖析 git中文件内容并没有真正存储在索引(.git/in ...

  6. 版本控制-Git服务器搭建和常用命令使用

    Git是目前世界上最先进的分布式版本控制系统(没有之一).使用Svn的请参考<版本控制-svn服务器搭建和常用命令(centos 6.3)>,下面介绍Git的常用命令 常用命令 简单版 升 ...

  7. git开发流程、常用命令及工具、TortoiseGit使用及常见问题

    根据我最近使用git的一些经历,git是基于分支的版本控制工具,分支有远程分支和本地分支. 一.开发流程 - 从远程服务器的master,clone一份项目文件到本地,然后本地master的基础上br ...

  8. Git 使用的配置 常用命令

    老文一篇 搬过来 1. git的部分配置 # 全局提交用户名与邮箱 git config --global user.name "simon" git config --globa ...

  9. Git 配置环境及常用命令整理

    一.Git教程网站 廖雪峰网站 易百GitHub命令:https://www.yiibai.com/git/git_clone.html 完成Windows环境命令下Git config配置 设置好之 ...

  10. git 快速入门及常用命令

    身为技术人员,都知道Git是干嘛的.从服务端角度它是代码仓库,可以多人协作.版本控制.高效处理大型或小型项目所有内容:从客户端讲,它能够方便管理本地分支.且与服务端代码的同步,从拉取.合并.提交等等管 ...

随机推荐

  1. ansible(10)--ansible的systemd模块

    1. systemd模块 功能:管理服务启动与停止,与 service 模块用法一致: 主要参数如下: 参数 说明 name 指定需要控制的服务名称 state 指定服务状态,其值可以为stopped ...

  2. SpringBoot-EasyExcel导出数据(带图片)

    前言 EasyExcel 是阿里巴巴开源的一个Java操作Excel的技术,和EasyPoi一样是封装Poi的工具类. 但是不同的地方在于,在EasyExcel中解决了Poi技术读取大批量数据耗费内存 ...

  3. Clion代码自动格式化保存

    目录 前言 使用外部工具Artistic Style Clion 插件配置 注意 前言 使用Clion的时候,可以自动格式化代码的操作. 使用外部工具Artistic Style 序号 名称 地址 1 ...

  4. RocketMQ阅读源码前的准备

    本文将讲解如何在IDEA中导入 RocketMQ 源码,并运行 Broker 和 NameServer,编写一个消息发送与消息消费的示例. 一. 源码导入及调试 1.1 导入源码 RocketMQ 原 ...

  5. Swoole 源码分析之 TCP Server 模块

    首发原文链接:https://mp.weixin.qq.com/s/KxgxseLEz84wxUPjzSUd3w 大家好,我是码农先森. 今天我们来分析 TCP Server 模块 的实现原理,下面这 ...

  6. AI绘图之Midjourney初体验

    Midjourney (MJ) 使用笔记 最近尝试了 Midjourney 绘图,简单记录下使用流程. 注册及登陆 首先是账号注册和登陆,基本上就是一路下一步,唯一需要注意的是加入MJ频道,具体流程为 ...

  7. 莫烦tensorflow学习记录 (3)建造我们第一个神经网络

    另一个学习文档http://doc.codingdict.com/tensorflow/tfdoc/tutorials/overview.html 定义 add_layer() https://mof ...

  8. python实现取得成员所在的多个位置

    注:本代码主要是为了实现多个集合之间求并集时的辅助代码,简单的举个例子来说明代码的功能. 约定:例如{11: [2, 3]}表示数据11在集合2和集合3中都存在. 现有以下数据: d0 = {38:  ...

  9. kettle从入门到精通 第六十三课 ETL之kettle kettle调用python脚本的两种方法

    kettle中不能直接调用python脚本,可以通过shell脚本和http进行调用pyton服务. 一.shell脚本调用python脚本 1.下面是一段简单的无参python脚本 import o ...

  10. mysql中,时间类型datetime和timestamp的区别

    TIMESTAMP和DATETIME的相同点: 两者都可用来表示 YYYY-MM-DD HH:MM:SS 类型的日期. TIMESTAMP和DATETIME的不同点: 1>  两者的存储方式不一 ...