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. synchronized原理-字节码分析、对象内存结构、锁升级过程、Monitor

    本文分析的问题: synchronized 字节码文件分析之 monitorenter.monitorexit 指令 为什么任何一个Java对象都可以成为一把锁? 对象的内存结构 锁升级过程 Moni ...

  2. js前端去除HTML标签返回纯字符串正则/<[^>]*>/g

    点击查看代码 let stra = `<p>公告:我们于2024年5月3日下午13:00下架本小程序,请您搜索"好故事"进行观看,您的会员和书豆不会受到影响.感谢您的理 ...

  3. 密码学—凯撒密码Python程序

    文章目录 凯撒密码来源 加密算法 解密算法 凯撒密码来源 古典密码,且属于单表加密 凯撒密码又称恺撒变换.变换加密,凯撒是当时罗马共和时期恺撒的名字命名的,当年恺撒曾用此方法与其将军们进行联系.(当然 ...

  4. 使用Chrome 开发者工具提取对应的字符串

    最近在查看一个API的数据,效果很好,但是里面只有一部分我想要的内容 如果是简单一点的可以直接获取 如下比如我想要提取返回的代码中关键的字符串:"video": "这里的 ...

  5. ICESat-2 从ATL08中获取ATL03分类结果

    ICESat-2 ATL03数据和ATL08数据的分段距离不一致,ATL08在ATL03的基础上重新分段,并对分段内的数据做处理得到一系列的结果,详情见数据字典: ATL08 Product Data ...

  6. Java JVM——1.JVM与Java体系结构

    前言 作为Java工程师的你曾被伤害过吗?你是否也遇到过这些问题? ✘ 运行着的线上系统突然卡死,系统无法访问,甚至直接OOMM! ✘ 想解决线上JVM GC问题,但却无从下手. ✘ 新项目上线,对各 ...

  7. golang 后台 苹果一键登录 sing in with apple

    本文主要展示golang后台编写苹果一键登录的代码.苹果一键登录的流程需自行去查看相关文档 这是解析 identity_token的方法来验证    如果是用code的话验证 请去 https://b ...

  8. Android启动过程-万字长文(Android14)

    在计算机启动过程和Linux内核Kernel启动过程介绍了计算机启动和内核加载,本篇文章主要介绍Android系统是如何启动的. 一.Android启动流程 Android系统的启动流程与Linux接 ...

  9. C#开源实用的工具类库,集成超过1000多种扩展方法

    前言 今天大姚给大家分享一个C#开源(MIT License).免费.实用且强大的工具类库,集成超过1000多种扩展方法增强 .NET Framework 和 .NET Core的使用效率:Z.Ext ...

  10. categraf托管与自升级

    categraf支持多种方式进行部署.托管,社区里部署和管理categraf也是五花八门,大家自己使用方便即可. 之前我们觉得大家通过ansible之类的工具批量下发/更新就能很简单地完成任务,最近很 ...