该笔记是廖雪峰的git教程的一个总结
远程仓库:
- 生成非对称加密的公钥和私钥:
ssh-keygen -t rsa -C "youremail@example.com"
;非对称加密参考这篇笔记 - 添加远程仓库:
git remote add origin git@github.com:michaelliao/learngit.git
,后面的链接是指定仓库的地址。 - 本地所有的内容推送到远程仓库:
git push -u origin master
。-u
参数是关联本地和远程的分支,简化后续的推送和拉取命令。 - 之后的推送操作:
git push origin master
。本地的master分支推送到远程仓库。 - 从远程仓库克隆:
git clone git@github.com:michaelliao/gitskills.git
- 同远程仓库同步:
git pull
拉取同步远程分支,该命令在拉取远程分支的时候,不会删除对应的本地分支;git pull -p
在本地删除远程仓库已经删除的分支。
标签管理
- 给最近的一次提交打标签:
git tag v1.0
,相当于最近一次提交是1.0版本 - 查看所有的标签信息:
git tag
,注意这是按照字母顺序排列的 - 给某个特定的提交打标签:
git tag v1.0 f354ac
- 给特定的标签添加说明信息:
git tag -a v0.1 -m "version 0.1 released" f354ac
- 查看标签的信息:
git show v1.0
,这是显示上一个命令的提交信息。 - 删除错误的标签:
git tag -d v1.0
- 推送某个标签到远程仓库:
git push origin v1.0
- 推送所有的未推送的标签:
git push origin --tags
- 从远程删除错误的标签:
git tag -d v1.0
,之后执行git push origin :refs/tags/v0.9
忽略特殊文件
如果我们提交的时候,不想添加某些特殊的文件,比如我们写了个C++项目,用CMake管理,但是我们的开发工具是vscode,这里面有很多私人的配置文件,我们只想提交CMake文件和项目文件,此时就需要进行忽略特殊文件处理了。
在.git
同级目录下,创建.gitignore
文件,直接使用github
给我们的配置文件并加以组合即可,文件夹参考地址:https://github.com/github/gitignore
如果确实想要添加被被忽略的特殊文件,则:git add -f <filename>
即可。
.gitignore
文件本身也可以及进行版本控制