首先请注意,Gist不支持目录。要将存储库导入到Gist中,请按照以下步骤操作:
创建一个新的 Gist 并在本地克隆它(用您的Gist id替换“dummy id”):
git clone git@gist.github.com:792bxxxxxxxxxxxxxxx9.git
cd
到该 gist 目录
从你的 GitHub 仓库中拉取并合并:
git pull git@github.com:<user>/<repo>.git
推送您的更改
git push
再次强调,如果您有目录,您需要删除并提交它们:rm -rf some-directory
git commit -m 'Removed some-directory' .
使用上述步骤,将会保留项目历史记录。如果您不关心历史记录,您可以随时将文件推送到您的Gist中。假设您有一个包含多个文件夹的仓库,并且您想要为每个文件夹创建一个Gist。您将重复执行下一步操作(或者可以使用脚本完成):
git clone git@gist.github.com:<gist-id>.git
cd <gist-id>
cp ../path/to/your/github/repository/and/some/folder/* .
git add .
git commit -m 'Added the Gist files' .
git push
Gist与GitHub的工作方式不同:
Gist是一种简单的方法,用于与他人共享片段和粘贴内容。所有的Gist都是Git存储库,因此它们自动进行版本控制、可派生和可以使用Git。
然而,如果您尝试在Gist中推送目录,您将从远程获取错误信息:
$ git push
Counting objects: 32, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (21/21), done.
Writing objects: 100% (32/32), 7.35 KiB | 0 bytes/s, done.
Total 32 (delta 10), reused 0 (delta 0)
remote: Gist does not support directories.
remote: These are the directories that are causing problems:
remote: foo
To git@gist.github.com:792.....0b79.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@gist.github.com:79.......9.git'
cp
)你的Gist中的内容并提交即可。请参见编辑。 - Ionică Bizău