git pull一个仓库到本地自定义文件夹

提示:

  1. git下有两种方式把代码从远程仓库下载到本地,HTTPS 和 SSH。

  2. 两种方式在没有权限(用户名密码)下HTTPS只能下载,SSH不能下载(pull)也不能上传(push)

  3. 本地的仓库文件夹,不需要和远程仓库名一样。

   例如:远程仓库是https://gitee.com/wc/nginx.git 默认clone下载到本地,文件夹名字就是nginx

1
2
$ git clone https://gitee.com/wc/nginx.git          // 下载后本的文件夹名nginx   
$ git clone https://gitee.com/wc/nginx.git test     // 下载后本的文件夹名test

      但是如果文件夹 test 已经存在,直接用 git pull 就可以。

  

---------------------------------------------------------------------------

正文:

一、新建一个文件夹,存放网络仓库下载的文件。

1
2
$ mkdir test
$ cd test/

 

二、初始化文件夹成一个git仓库(其实git就在当前目录下新建一个.git名字的隐藏文件夹)

1
$ git init

 

三、添加远程仓库地址

1
$ git remote add origin https://gitee.com/用户名/项目名.git

 origin是git默认给远程仓库起的名字,你可以改称任何你想要的名字

 

四、创建分支

1
2
3
$ echo "1" >1.txt
$ git add .
$ git commit -m '1.txt'

    为什么要手动创建一个分支,正常情况下 下载一个远程仓库用git clone 命令,就给自动创建了。

    但因为现在模拟特殊情况,初始化完的文件夹并没有分支,就需要手动创建,而手动创建,

目前已知的就是,用commit提交文件后才能产生,空文件夹下,git checkout -b master 和 git branche master

也创建不出来默认master分支,所以只能手动创建文件并commit后生成。

 

五、pull远程仓库文件到本地

1
$ git pull    //使用默认的origin时,可以省略origin

 或

1
$ git pull origin   //当你没有是用默认的origin时,可以指定你设置的名字

     此时因为没有把 远程仓库分支 本地分支 关联,应该会提示一下错误内容。

remote: Enumerating objects: 31, done.
remote: Counting objects: 100% (31/31), done.
remote: Compressing objects: 100% (26/26), done.
remote: Total 31 (delta 1), reused 0 (delta 0), pack-reused 0
展开对象中: 100% (31/31), 完成.
来自 https://gitee.com/用户名/项目名
 * [新分支]          master     -> origin/master
当前分支没有跟踪信息。
请指定您要合并哪一个分支。
详见 git-pull(1)。

    git pull <远程> <分支>

如果您想要为此分支创建跟踪信息,您可以执行:

    git branch --set-upstream-to=origin/<分支> master

 

六、关联 远程仓库分支 本地分支

1
git branch --set-upstream-to=origin/master master

 origin/master:origin 是上面第三步add后面的origin(默认一般是这个),当然你改其他的任意名字都行;

         master是远程的分支名,可以到远程仓库里查看,master(默认一般是这个)

master:和本地哪个分支关联,master(默认一般是这个)

 

七、关联后重新pull ,又会提示“拒绝合并无关的历史”

1
2
$ git pull
fatal: 拒绝合并无关的历史

 

八、强制合并

1
$ git pull --allow-unrelated-histories

 

至此,下载远程仓库完成。

 

另:如果你要 上传,用git push 会提示你输入用户名和密码(密码输入时什么也不显示,输完直接回车)

 

posted @   悟透  阅读(1208)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
历史上的今天:
2021-08-27 was全称
2021-08-27 curl访问https下载https文件
2021-08-27 Linux curl 命令下载文件
点击右上角即可分享
微信分享提示