git 删除远程仓库中的目录或文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git 删除远程仓库中的目录或文件相关的知识,希望对你有一定的参考价值。

参考技术A 1、预览将要删除的文件

git rm -r -n --cached 文件/文件夹名称

加上 -n 这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览。

2、确定无误后删除文件

git rm -r --cached 文件/文件夹名称

3、提交到本地并推送到远程服务器

git commit -m "提交说明"git push origin master

4、修改本地 .gitignore 文件 并提交

  git commit -m "提交说明"

  git push origin master

ps:如果本地已经不提交该目录或文件了,但是远程仓库还存在对应的目录或文件。可以重新clone一份,在本地删除以后,提交,更新。

如何创建/修改远程仓库 + 如何删除远程仓库 + 如何删除远程仓库中的某个文件或文件夹 + 如何使用git将本地仓库连接到多个远程仓库

首先我们来区分一些概念、术语、名词。不然脑子一锅粥,总是晕!!!
博主对此深有体会!从中学到了没事要多总结、多归类!

仓库有本地仓库和远程仓库之分。
仓库都可以叫做服务端(器)。
本地仓库有:Windows、Linux、MacOS。(指的是运行在不同系统下的本地仓库)
远程仓库有:GiuHub(国外)、Gitee码云(国内)、Coding(国内)等等。(说白了就是服务器)
那么服务端可以分为:本地服务端(器)、远程服务端(器)。
连接仓库的方式有:https、SSH等等。
连接仓库的客户端软件(工具)有:Git Bash、Git GUI、Git CMD、GitHub Desktop、小乌龟(TortoiseGit)等等。(https)
连接SSH的客户端软件(工具)有:SecureCRT、Xsheel、Putty、WinSCP、hyper_terminal(超级终端)等等。(SSH)

至少有几十种的排列组合,想想不蒙圈吗?这都是啥啊,我的妈呀,好乱啊!
自然而然,网上就会出现各种各样的教程。你不晕才怪呢!
其实对于我们个人而言,远程仓库就是一个远程的优盘,很多高大上的功能根本用不到。别拍,且听黑泽慢慢说来...

原则:对待我们自己的本地仓库、远程仓库,我们应该删除、创建、修改完全自由!(想想自己的东西都不能随心所欲的控制,何谈别人的呢!)

本演示这里的远程仓库是GitHub(国外)、Gitee码云(国内)、Coding(国内)

一、首先注册账号

GiuHub(国外):https://github.com/
Gitee码云(国内):https://gitee.com/
Coding(国内):https://coding.net/
如何注册账号,这里不赘述!但是,建议:
  GitHub(国外)使用邮箱为:[email protected](为了装逼)
  Gitee码云(国内)、Coding(国内)使用国内邮箱:如QQ邮箱、163邮箱等等。
  用户名:最好是自己姓名的拼音。(为了方便为了装逼)
  昵称:随意。

二、创建远程仓库

GitHub(国外)
步骤一:

技术分享图片
步骤二:
技术分享图片
步骤三:
技术分享图片

Gitee码云(国内)
步骤一:

技术分享图片
步骤二:
技术分享图片
步骤三:
技术分享图片

Coding(国内)
步骤一:

技术分享图片
步骤二:
技术分享图片
步骤三:
技术分享图片

三、删除Github中已有的仓库(即删除远程仓库)

三箭齐发,太累了,以下演示仅以GitHub为例。其余的同理。
如果我们想要删除Github中没有用的仓库,应该如何去做呢?

1、进入到我们需要删除的仓库里面,找到【settings】即仓库设置:

技术分享图片
2、然后,在仓库设置里拉到最底部,找到【Danger Zone】即危险区域:
技术分享图片
3、点击【Delete this repository】这样就可以删除该仓库了。删除仓库时,会再让我们确认删除的仓库名。防止误删。

四、将远程仓库Clone(下载/复制)到本地

注意1:演示我们使用连接仓库的客户端软件是:Git Bash
注意2:演示我们使用连接仓库的方式是:https

1、远程仓库地址的由来如下:

技术分享图片
2、在本地新建一个文件夹test,然后我们在该文件夹中右键 --> Git Bash Here,输入命令:git clone 远程仓库地址
技术分享图片

五、将本地仓库Push(同步/上传)到远程服务器

1、为了演示,我们先在本地仓库DemoUseGithub中新建一些文件夹和文件

技术分享图片
2、将本地仓库Push(同步/上传)到远程服务器
技术分享图片

六、删除Github中已有的仓库中的某个文件或文件夹(即删除远程仓库中的某个文件或文件夹)

我们知道,在Github上我们只能删除仓库,并不能删除文件或者文件夹,所以只能用命令来解决。
即我们通过删除本地仓库的某个文件或文件夹后,再将本地仓库与远程仓库同步,即可删除远程仓库中的某个文件或文件夹。

6.1、本地仓库和远程仓库同时删除文件或文件夹

1、我们先在本地仓库中删除掉文件a.txt

技术分享图片
2、然后执行以下命令,即可删除远程仓库中的文件了
技术分享图片
删除远程仓库中的文件夹同理。不在演示。

6.2、只删除远程仓库的文件或文件夹,不删除本地仓库的文件或文件夹

假如我们想要在远程仓库中将文件夹test01删除掉,但在本地仓库中并不想把它删除:

技术分享图片
在命令窗口输入以下命令:
技术分享图片
注意:
  git pull (从远程仓库中pull下来的项目放到的是本地的缓存里。)
  git clone 远程仓库地址 (从远程仓库中clone下来的项目放到的是本地的磁盘里。)

七、如何使用git将本地仓库连接到多个远程仓库

1、先在GiuHub(国外)、Gitee码云(国内) 和 Coding(国内) 上分别新建一个远程仓库,参考“二、创建远程仓库”。

2、创建一个本地仓库test,在某一个目录下右键 --> Git Bash Here,演示使用本地仓库test(远程仓库的名称和本地仓库的名称可以不一样,一样是为了方便,不一样也没事

技术分享图片
其余命令如下:
使用git在本地创建一个本地仓库的过程(位置:在本地桌面上)
    $ makdir test       // 创建一个本地仓库
    $ cd test           // 打开这个本地仓库
    $ git init          // 初始化这个本地仓库
    $ touch README.md       // 创建README.md文件
    $ git add README.md     // 更新README.md文件
    $ git commit -m ‘first commit‘     // 提交更新,并注释信息“first commit”
    $ git remote add origin [email protected]:dedsf/hello-world.git     // 连接远程github仓库  
    $ git push -u origin master     // 将本地仓库更新到github项目上去

    删除连接的远程仓库
    $ git remote rm origin
    查看远程仓库地址信息
    $ git remote -v 

截图如下:

技术分享图片
进入本地仓库,设置本地仓库的远程仓库连接。在第一步中已经设置好了本地仓库,并连接上github的远程仓库,现在给本地仓库多连接上几个远程仓库即可。
为了区分方便,把coding上仓库地址代号称之为coding。
为了区分方便,把gitee上仓库地址代号称之为gitee。
将本地仓库推到远程仓库
git push coding master
git push gitee master

具体操作如下图:

技术分享图片
注意:都有需要强制推送才行。

八、补充说明

  • Git CMD:Git中的Bash是基于CMD的,在CMD的基础上增添一些新的命令与功能。(所以建议在使用的时候,用Bash更加方便,二者切换如下图所示)
  • Git GUI:Git GUI是Git Bash的替代品,为Windows用户提供了更简便易懂的图形界面。(但是比不上GitHub Desktop这个桌面版的客户端)
  • Git Bash:Git Bash是命令行操作,官方介绍有一句就是“让Linux用户感到宾至如归”。(萌新用户使用了就肥肠憋屈)

git remote add origin +复制的内容”,就是给本地仓库增加一个远程仓库,刚刚复制的内容就是远程仓库的地址。可以理解为origin是后边一长串仓库地址的代号。github给出的默认名是origin,当然也可以写别的。所以这里解释了为什么我们pull或者push时后面加origin了,这是因为我们在设置本地仓库与远程仓库连接的时候,与代号为origin的远程仓库建立了链接。如下:
  git pull origin master
  git push origin master


  • git push -f origin master or git push origin master -f
    本地仓库文件强制上传到远程仓库,把远程的仓库文件覆盖
  • git pull --rebase origin master
    拉取远程的仓库文件把本地的覆盖
  • dir     # 查看有哪些文件夹
  • git --help   # 帮助命令

  • 如果输入git push origin master
      提示出错信息:error:failed to push som refs to …….
  • 解决办法如下:
      1、先输入:git pull --rebase origin master // 先把远程服务器github上面的文件拉下来把本地的覆盖
      2、再输入:git push origin master

九、参考连接

  Git将本地仓库连接多个远程仓库:https://blog.csdn.net/qq_36667170/article/details/79336760
  GitHub Desktop操作:https://blog.csdn.net/qq_36667170/article/details/79079750

以上是关于git 删除远程仓库中的目录或文件的主要内容,如果未能解决你的问题,请参考以下文章

[GIT]GIT之删除远程仓库中的目录或文件

git删除远程仓库的文件或目录

如何创建/修改远程仓库 + 如何删除远程仓库 + 如何删除远程仓库中的某个文件或文件夹 + 如何使用git将本地仓库连接到多个远程仓库

如何删除git远程仓库的某个文件

将本地目录推送到Git远程仓库

git删除远程仓库文件