我正在寻找一种方法来应对“ git”中的某些问题。让我解释一下我想要什么。
我在本地初始化了一个git repo。我们将文件夹名称称为“ backoffice”。我在此文件夹下工作,并使用此
进行了更改。git init
git add .
git commit -m "login part completed"
现在,Gitlab中已有一个仓库。它只是为我在遥控器上初始化的。我想将本地代码添加到该远程存储库中, 然后继续在我的“后台”文件夹下工作。我将把更改推送到该远程存储库中。我该如何实现?如果可以的话,您可以将所有步骤写成git命令吗?
答案 0 :(得分:3)
现在,Gitlab中已有一个仓库。刚刚在遥控器上为我初始化了
刚刚创建了远程存储库(没有任何提交)后,您可以将本地分支直接推送到该存储库:
git push ssh://<remote-host>/<remote-path> HEAD
当远程存储库包含您不想想要保留的模板文件(例如自述文件)时,可以强制执行(--force
选项或{{1} }。
当政策不允许施加压力时,您可以将其与+HEAD
策略合并并按上述方法进行推动:
-s ours
当您想要线性布局时,可以对其重新设置
git fetch ssh://<remote-host>/<remote-path>
git merge -s ours FETCH_HEAD
git push ssh://<remote-host>/<remote-path> HEAD
或樱桃式选择提交。使用例如git fetch ssh://<remote-host>/<remote-path>
git rebase --onto FETCH_HEAD <branch-point>
找到gitk
。
答案 1 :(得分:2)
我将github存储库添加为远程存储,然后从那里获取远程master分支,然后从“旧”分支中挑选修订。
假设您的分支称为master且它具有3个修订版本,则:
git remote add gh url-of-gh-repo
git fetch gh
git checkout master
git branch -m old-master # rename branch
git checkout master gh/master # create new master
git cherry-pick old-master~2
git cherry-pick old-master~1
git cherry-pick old-master
git push gh master
不知道说“老主人”〜4 ..“老主人”是否会奏效(也不会重新设置基准)。但是逐个修订应该可以。