2012-07-20 30 views
2

我正在为一家公司的项目工作,那么我被带进来修复一个项目,并最终完全重新制作一切。这是唯一的方法,它是一款游戏,大部分代码都是使用第一版引擎制作的,并且不适合最新版本的引擎。所以我完全重拍了它,但它不会让我只是在删除所有内容并粘贴新源时推送更改。当我彻底改造整个项目时,如何完全重置GIT仓库?

我也不是存储库的主要所有者,它是主要的人这家公司有他的账户。尽管我有读/写访问权限。我会请他为我做一些东西,但尽管他是主要人物,但他只是主要艺术家,而不是超级技术人员。所以我希望能够独立完成所有工作,而无需走过他。

我只想完全清除一个项目并粘贴到新的源代码中,并将其发送并取代主存储库中的旧代码。有没有办法可以用git来做到这一点?

+0

“提取/合并”,“删除所有内容”,“提交”,“添加/添加新代码”,“提交”,“推送”如何? – Shahbaz 2012-07-20 04:43:48

+0

我尝试了类似的东西,但它仍然显示了很多已删除的文件,这些文件在源视图中仍然不再需要。我不是Git的“主人”,有没有办法让Git识别现在被删除的东西? – G1i1ch 2012-07-20 04:52:32

+0

@ G1i1ch使用'git rm'让git知道删除的文件。 – xaizek 2012-07-20 04:58:29

回答

3

这似乎相当激烈。但是...

你需要一些沿用的东西(这是没有测试 - 它是为了给你你需要的味道)。我对你的环境做了很多假设

# get the current stuff 
git pull origin master 

# label the location you are about to nuke. Pick a name that suites you. 
# while this is not strictly necessary, I'd highly recommend it 
git checkout master 
git branch release_0.9 
git push origin release_0.9 

# change to a new branch 
git checkout -b release_1.0 

# remove all the old files 
ls | xargs rm -rf 

# copy in your files here 

# add all the new files 
git add -A 

# commit and push your branch 
git commit 
git push origin release_1.0 

# update master 
git push . HEAD:master 

# push the new version of master 
git push origin master 

请不要盲目地执行这些命令。先理解并测试它们。

+0

优化了您的答案。查看编辑以查看您是否同意。 – 2012-07-20 07:02:10

+0

@AdamDymitruk我将不得不查看一些更改:)谢谢 – walrii 2012-07-20 08:28:28

相关问题