繁体   English   中英

将 GIT 存储库源的副本与回购链接

[英]link a copy of a GIT repository source with a repo

GIT 存储库中有一个项目,该项目安装在生产服务器中,但 GIT 未初始化。 上个月有人在生产服务器的源代码中编辑了文件,但那里没有 GIT。 我没有创建存储库或安装在服务器上,但现在我想在生产服务器中安装 GIT 并将现有源链接到 GIT 存储库,并将现有源的更改提交到 GIT 存储库。

我尝试将生产服务器的文件复制到 mi PC 的本地目录中,然后:

git init
git remote add origin https://.....git

当我运行git status时,它返回:

On branch master
No commits yet
Untracked files:
...
...

我希望只显示不同的文件,但绝对所有文件都显示为红色未跟踪。

我该怎么做?

提前致谢

这将很棘手。 一种基本方法可能是执行git clone...以获取存储库的当前 state,然后只需将所有文件替换为生产服务器文件的副本。

但是,这可能会将文件还原为您不想还原的旧版本(除了包括您实际需要的更改之外)。 我不知道您的存储库有多大,所以我不知道这可能有多大问题。 对更改进行仔细的代码审查可能会奏效。

完整步骤:

$ git clone ... [new_repo_name]
$ rm -rf new_repo_name/**  # Deletes existing contents (will not delete .git folder)  You can do this manually if you like
$ cp path/to/production/server/copy/** new_repo_name  # Copy production server contents across (you can do this manually as an alternative)
$ cd new_repo_name
$ git checkout -b [branch_name]  # Create a new branch
$ git add .  # Mark everything as to be committed.
$ git commit -m "Replace everything with production server version."
$ git push --set-upstream origin branch_name  # Push branch to origin

此时,您可以向您的 master 分支发出拉取请求,并仔细地对您看到的任何更改进行代码审查。 您可能最终只想引入您看到的一些更改。 祝你好运。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM