【Git/GitHub】玩转Git/GitHub系列文章目录(持续更新中!)
程序员文章站
2022-05-27 16:59:13
...
这篇文章属于本人参考诸多博客、教程、文档等资料,所撰写的「玩转Git/GitHub」系列文章的汇总目录,将随着时间不断修改完善,目的在于为读者提供有关Git/GitHub使用的大部分参考信息。由于内容随时可能发生更新变动,欢迎关注和收藏本文以作备忘。
一般来说,Git和GitHub仓库的创建和使用,有几种选择:
-
在GitHub上创建一个新的空仓库,然后在Git Bash中创建一个新仓库,在本地添加修改然后提交到GitHub:
$ echo "# repositoryName" >> README.md $ git init $ git add README.md $ git commit -m "first commit" $ git branch -M main $ git remote add origin https://github.com/memcpy0/repositoryName.git $ git push -u origin main
-
在GitHub上创建一个新的空仓库,然后在Git Bash中将本地已经存在的仓库与GitHub远程仓库进行关联,最后
push
这个仓库:$ git remote add origin https://github.com/memcpy0/repositoryName.git $ git branch -M main # 重命名当前分支master为main $ git push -u origin main
-
在GitHub上创建一个新的空仓库,然后进入本地一个已经存在的文件夹,鼠标右键
Git Bash Here
打开Git Bash,pwd
命令查看文件夹位置。接着将文件夹设置为仓库,提交文件夹中的所有文件。最后遵循2的做法:$ git init # 将该文件夹变成Git可以管理的仓库 $ ls # 查看文件夹中的内容 $ git add . # 一个个提交太麻烦,git add .将所有文件都提交到暂存区 $ git commit -m 'the initial edition' # 提交文件和说明到版本库
- 对于GitHub上的 新建非空仓库(有
README.md, LICENSE, .gitignore
等文件) 或者已有仓库,可以git clone
下来,在本地添加修改然后提交到GitHub。 - 对于GitHub上的 新建非空仓库(有
README.md, LICENSE, .gitignore
等文件) 或者已有仓库,除了4的做法外,在本地如果存在文件夹(先按照3的做法设置为仓库)或者相关仓库时,还可以先按照2的做法关联远程仓库(重命名分支可做可不做),然后就可以直接推送!不过在第一次进行推送时要注意的是,GitHub远程仓库非空,因此需要先将两者进行合并,最后再进行推送:$ git pull --rebase origin master # 合并仓库 $ git push -u origin master # -u参数:将master分支的所有内容都提交,第一次推送后的修改可以不用带这个参数 $ git push origin master
-
对别人建立的仓库,可以
fork
过来,然后遵循4的做法,接着还可以提交Pull Request。 - 最后,我们得到了一个属于个人的非空仓库,但是还需要定期维护。本地的修改大体上遵循4的做法,通过如下命令进行同步:
$ git add -A # 将所有文件的修改都提交 $ git commit -m '说明' # 提交到本地仓库 $ git push origin master # 推送到GitHub网站上
【Git/GitHub】学习笔记一 安装Git、GitHub和Git的初步使用——这是本系列的第一篇文章,讲述Git/GitHub的初始用法。
【Git/GitHub】学习笔记二 Git的常用操作——讲解Git的大多数常用操作。
【Git/GitHub】学习笔记三 熟悉GitHub基础功能——这一篇和下面的三篇都将介绍GitHub的功能,包括基础功能、Pull Request等等;
【Git/GitHub】学习笔记四 发送Pull Request——这一篇讲述如何发送Pull Request、如何维护仓库;
【Git/GitHub】学习笔记五 接收Pull Request——尚未完成的一篇文章,讲述如何接受Pull Request、合并分支、消除冲突;
【Git/GitHub】学习笔记六 GitHub协作工具与服务、GUI客户端、开发流程——还未开始写,讲述与GitHub协作的工具、服务、GUI客户端,使用GitHub的开发流程等等
上一篇: 常用的 Linux 命令