Git 简单使用教程
要将当前文件夹中的子文件夹上传到你的 GitHub 仓库,你可以按照以下步骤进行操作:
-
进入你的项目目录: 首先确保你当前位于包含这些子文件夹的目录中。你已经在
scJamba_20240926目录下,所以无需改变目录。 -
初始化 Git 仓库(如果还没有的话): 如果你的项目目录还没有被初始化为一个 Git 仓库,可以通过以下命令初始化:
git init -
检查当前仓库状态: 通过以下命令查看哪些文件或文件夹已经被追踪或未被追踪:
git status -
添加文件夹到暂存区: 如果你想将
Jamba-v0.1/、pretrain/和scgpt/文件夹及其内容上传到 GitHub,可以通过以下命令将它们添加到暂存区:git add Jamba-v0.1/ pretrain/ scgpt/如果你想添加所有文件和文件夹,可以使用:
git add . -
提交更改: 将你刚刚添加的文件和文件夹提交到本地仓库:
git commit -m "Initial commit with Jamba-v0.1, pretrain, and scgpt folders" -
链接到 GitHub 仓库: 如果还没有将本地仓库链接到 GitHub 仓库,需要先创建一个新的 GitHub 仓库,然后使用以下命令链接:
git remote add origin https://github.com/你的用户名/你的仓库名.git -
推送到 GitHub: 最后,将本地的提交推送到 GitHub 仓库:
git push -u origin master
如果你的默认分支名称是 main 而不是 master,那么在推送时需要将 master 替换为 main:
git push -u origin main
这样你就可以将 scJamba_20240926 文件夹中的子文件夹上传到 GitHub 仓库了。
例外情况
你的本地分支 main 比远程仓库中的 main 分支落后了,Git 不允许你直接推送,因为这样可能会丢失远程仓库的更改。为了解决这个问题,你可以按照以下步骤操作:
解决步骤:
-
拉取远程仓库的最新更改并合并到本地分支: 运行以下命令拉取远程仓库中的更改,并将它们与本地的更改合并:
git pull origin main --rebase--rebase选项会将你的本地提交应用到从远程仓库拉取的最新提交之后,以保持提交历史的线性。如果遇到冲突,Git 会提示你解决冲突,解决冲突后再继续。 -
解决可能的合并冲突: 如果在执行
git pull时遇到冲突,Git 会告诉你哪些文件存在冲突。你需要手动编辑这些文件,解决冲突后执行以下命令标记冲突已解决:git add <冲突文件>然后继续 rebase 过程:
git rebase --continue -
重新推送到远程仓库: 解决冲突并完成
rebase之后,可以尝试再次推送到远程仓库:git push -u origin main
注意事项:
- 如果你不想使用
rebase,也可以用git pull origin main来执行普通的合并。这样可能会在提交历史中留下合并提交(merge commit)。 - 如果远程仓库的改动不重要,也可以选择使用
git push -f origin main强制推送,但这种方式会覆盖远程仓库的提交历史,除非你确定这样做是安全的,否则不建议使用。
通过上述步骤,你应该能够顺利将本地的更改推送到 GitHub 仓库。如果有任何问题,随时告知我。

浙公网安备 33010602011771号