Git 问题汇总

GIT无法Clone仓库到本地

  • 错误信息:error: RPC failed; HTTP 302 curl 22 The requested URL returned error: 302
    fatal: the remote end hung up unexpectedly

问题的原因的: http.followRedirects 不能自动跳造成的。

解决办法:

         打开git bash输入如下内容:
         git config --global http.https://xxx.xxx.git.followRedirects "true"

其中,需要把: https://xxx.xxx.git 改成你要 clone 的网址, 比如: https://gitee.xxx.git


如何 合并其它仓库到自己的仓库并保留其提交历史

  • 合并Git仓库A的分支master到Git仓库B的名为MergeFrmA分支,并保留A的所有提交记录

主要步骤如下:

1.切换到要合并到的仓库(即仓库B)的MergeFrmA

2.在仓库A的所在目录中打开git bash,假设仓库A的地址为https://gitee.com/projectA.git,则在git bash中输入如下内容:

git remote add master https://gitee.com/projectA.git
git fetch --all 或者:git pull https://gitee.com/projectA.git
   

fetch仅是下载到本地做为一个独立分支,没有合并,需要手动合并一下再提交;pull则是直接与当前分支进行了合并;

处理完后,可以使用gitgui或sourcetree或者命令行来提交该合并到仓库B的服务端;


如何删除远端仓库的某次提交

# 重置至指定版本,即本地仓库commit的ID

# --soft:保留当前工作区,以便重新提交。--hard:会撤销相应工作区的修改,谨慎使用。

git reset --hard commitID

# 然后可以再使用:git log,查看重置是否成功

#commitID可以是完整的ID,也可以是缩略的ID(中括号中的ID值为缩略值)

# 强制推送,即远程仓库push的取消。参数force是必须的,否则报错:本地项目版本号低于远端仓库版本号

git push --force

#这样就会把该提交之后的(也就是比日期更新的)给清除掉(注意:不可恢复式的清除),使该次提交成为仓库中最新的一次提交;

 

修改本地或无端分支名称

假设分支名称为oldName
想要修改为 newName

1. 本地分支重命名(还没有推送到远程)

git branch -m oldName newName

2. 远程分支重命名 (已经推送远程-假设本地分支和远程对应分支名称相同)
a. 重命名远程分支对应的本地分支

git branch -m oldName newName

b. 删除远程分支

git push --delete origin oldName

 c. 上传新命名的本地分支

git push origin newName

d.把修改后的本地分支与远程分支关联

git branch --set-upstream-to origin/newName

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值