如何仅将必要文件/文件夹推送到GitHub(VS22/VS Code)
核心:用.gitignore过滤不必要文件
不管用VS22还是VS Code,.gitignore是控制Git追踪范围的关键——它会告诉Git哪些文件/目录不需要上传到仓库。针对你的情况,重点要忽略VS生成的本地配置文件、编译输出目录、包含本地绝对路径的自定义文件,避免仓库混入C盘相关内容。
常用的忽略规则示例(根据项目类型调整):
# VS系列本地文件 .vs/ *.suo *.user *.sln.docstates # 编译输出目录 bin/ obj/ # 本地配置(可能含绝对路径) appsettings.Development.json local.config
在VS22中操作步骤
初始化仓库时配置忽略规则
打开项目后,右键解决方案 →Git→创建Git仓库,选择GitHub作为远程仓库。在创建过程中,VS会提示选择.gitignore模板,直接选对应项目类型(比如.NET),系统会自动生成适配的忽略规则。手动补全忽略规则(如果已创建仓库)
在项目根目录新建.gitignore文件,把上面的规则粘贴进去。之后VS22的「Git更改」面板里,被忽略的文件会变成灰色,不会被默认勾选。提交并推送
在「Git更改」面板,只勾选源码文件(.cs、.sln、.csproj)、说明文档(README.md)等必要内容,填写提交信息后点击「提交并推送」。
在VS Code中操作步骤
初始化仓库
打开项目文件夹,点击左侧「源代码管理」图标,点击「初始化仓库」完成本地Git仓库创建。添加.gitignore文件
按下Ctrl+Shift+P打开命令面板,输入Add Gitignore,选择对应项目类型,VS Code会自动生成标准的忽略模板。如果需要自定义规则,直接编辑生成的.gitignore文件,添加本地路径相关文件的忽略规则。提交推送
在源代码管理面板,查看待提交文件——灰色文件是已被忽略的,无需处理。勾选需要上传的必要文件,输入提交信息后点击「提交」,再点击「推送」按钮推送到GitHub。
清理已上传的多余文件
如果已经把本地C盘相关文件推送到仓库了,按以下步骤清理:
- 先更新
.gitignore,确保包含那些多余文件的规则。 - 打开终端(VS22用「视图→终端」,VS Code用「终端→新建终端」),执行命令移除Git对这些文件的追踪(本地文件会保留):
# 移除单个文件 git rm --cached 多余文件路径 # 移除整个目录 git rm --cached -r 多余目录路径 - 提交这个更改并推送,仓库里的多余文件就会被删除,本地文件不受影响。
内容的提问来源于stack exchange,提问作者ImStillLearning

