我有一个特别的项目,我永远不想推送给GitHub。也就是说,我只想在本地使用Git并确保它永远不会被推送到远程存储库。有没有办法标记目录/项目以便锁定并且 push 命令如果尝试将失败?这样我就不必担心不小心推它了。我一直在使用Git,因为添加/提交/推送根植于我的手指,我不希望在一些深夜编程会话中发生意外。
答案 0 :(得分:4)
两种选择(我知道):
1)删除本地存储库对远程存储库的引用。
git remote remove origin
通常,只有一个名为“origin”的远程引用。 您可以查看附加参考资料:
git remote show
2)保留引用,但将它们指向不同的存储库:
git remote set-url origin ${somethingElse}
答案 1 :(得分:3)
您可以添加pre-push
挂钩以防止推送存储库。将现有.git/hooks/pre-push.sample
重命名为.git/hooks/pre-push
(如果该文件不存在,则创建该文件)。该文件的内容应如下所示:
#!/bin/sh
echo 'Repository cannot be pushed' 2>&1
exit 1
echo
是可选的,但脚本应退出非0。
答案 2 :(得分:1)
您可以按如下方式添加本地遥控器:
1)使用以下内容在计算机的某处创建一个裸存储库:
git init --bare path/to/localrem.git
这将创建一个没有工作目录的裸存储库,这是实际遥控器中通常使用的。 (它会创建一个名为localrem.git
的文件夹,这是通常的.git回购,但这适用于遥控器,很明显你可以更改localrem
任意名称。
2)接下来在您的原始存储库中添加新的遥控器,就像添加任何普通遥控器一样,除了路径不是网址:
git remote add origin path/to/localrem.git
3)现在你可以按照自己的意愿推动,而不必担心世界会看到你的工作。
git push origin master
当然,这取决于您希望在本地遥控器中保留哪个分支。