1

入门

最近真正开始使用github,之前只是注册过账号,一直没有利用起来。最近代码敲的多了,就想找一个地方保存起来。github成了我的首选。
我电脑使用的系统是fedora,所以对命令行情有独钟。相比较windows下的图像化的操作,linux下的命令行在我看来还是不错的。所以写了一些文章,林林总总的将整个过程记录下来。
在这里推荐一下 廖学峰的git教程,作为一个初学者,看了文章之后能很快入门。

流程

在整个流程开始之前,学要设置本机和github之间的ssh连接。具体参照廖雪峰的git教程。这是整个教程的基础。

初始化

初始化的作用可以帮助我们建立一个仓库,可以作为一个远程库
git init
需要先创建一个文件夹,这个文件夹的名字应该和你的仓库的名字相同,然后在文件夹内部使用这个命令,会生成一个.git文件夹,当前的目录就是工作空间。

然后你就可以在当前的文件夹中开始编辑你的代码。

添加远程库

当你在github上建立里一个仓库之后,现在本地对这个仓库进行推送,必须先建立联系
`git push -u origin master
To git@github.com:yourUsername/yourRepositoryName.git`
在建立联系之前,必须对仓库进行初始化。

文件信息添加到索引库

git add .
git add命令主要是将文件信息添加到索引库中,当我们在后面提交的时候,是根据索引库中的信息进行提交的。
最基本的git add [path]其中,path可以是文件也是目录。
具体的命令可以参照git add 详解

将索引内容添加到仓库

git commit -m '描述要提交的信息'

提交

最后一步就是提交我的代码了
git push -u origin master
但是在我的提交过程中,我遇到了两个坑
第一个:

! [rejected] master -> master (fetch first)
error: 无法推送一些引用到 'git@github.com:nikomaniac/codePenLearning.git'

提示:更新被拒绝,因为远程版本库包含您本地尚不存在的提交。这通常是因为另外
提示:一个版本库已向该引用进行了推送。再次推送前,您可能需要先整合远程变更
提示:(如 'git pull ...')。
提示:详见 'git push --help' 中的 'Note about fast-forwards' 小节。

后来在百度上一查,找到了git pull这个命令的作用:取回远程主机某个分支的更新,再与本地的指定分支合并。它的完整格式稍稍有点复杂。
我不是很明白,直接运行了git pull 就出现了另一个坑。

! [rejected] master -> master (non-fast-forward)

error: 无法推送一些引用到 'git@github.com:nikomaniac/codePenLearning.git'
提示:更新被拒绝,因为您当前分支的最新提交落后于其对应的远程分支。
提示:再次推送前,先与远程变更合并(如 'git pull ...')。详见
提示:'git push --help' 中的 'Note about fast-forwards' 小节。

这个错误需要用到git fetch origin
远程主机的版本库有了更新(Git术语叫做commit),需要将这些更新取回本地,这时就要用到git fetch命令。在这里,需要获取远端更新并与本地合并


NikoManiac
240 声望6 粉丝

2018,厚积才能爆发。