抬头仰望星空,是否能发现自己的渺小。

伪斜杠青年

人们总是混淆了欲望和理想

Git – 合并旧仓库与新仓库以及忽略 .DS_Store

前言

各种花样作死~

背景与需求:上篇有自建一个gogs进行代码管理,那么说明我以前本地代码是没进行管理的,仅仅只是git init后本地commit了几次。那么我想合并推送到gogs上怎么做呢?

问题一:新旧代码合并

其实这个很好解决,但是网上确实有人写了很多。不过这解法也只适合远端与本地合并。

简单来说:git clone 旧仓库到本地 然后在本地仓库用 git remote add 添加新仓库地址 再push到新地址。

实际步骤:

我的仓库一直在本地,所以不用clone,只用添加远端地址然后rebase一下就好。

#添加远程分支
git remote add origin <your git url>Jenney.git
#刷新分支信息到本地
git fetch origin
#将当前分支与远程分支进行合并
git rebase -m origin/master
#推送到远程(因为是第一次推送 使用了--set-upstream 后面就可以直接push了)
git push --set-upstream origin master
PS:可能存在冲突 解决冲突后 使用git add 冲突文件,然后使用git rebase --continue 保存即可

至此,远程仓库上已有本地的那些提交,已成功合并。

问题二:解决DS_Store

在.gitignore中添加

**/.DS_Store

表示每层目录下的DS_Store都不需要被记录

还有更麻烦的,参考:https://orianna-zzo.github.io/sci-tech/2018-01/ds-store

参考:https://git-scm.com/docs/git-rebase

https://help.github.com/cn/github/using-git/adding-a-remote


0条评论

发表评论