文章目录
0.前言
我们都知道,使用git的好处是可以很好地对项目版本进行控制。
我们可以很清楚地看到修改了哪些代码,并可以恢复到我们想要的版本。
使用的话,平常我们都是先将改动的代码提交到本地仓库,再推送到远程仓库。
1.建立仓库
1.1克隆仓库
git clone +仓库地址
2.将文件存入仓库
2.1创建文件夹(已经连接上远程仓库的跳过)
在桌面上随便创建一个文件夹然后 右键 bash here
2.2存放入内容
将要上传的文件放入到该新建文件夹中
2.3存放文件入本地仓库
2.3.1初始化git库
git init
作用:git init就是git库初始化的命令。如你所说,在任何一个文件夹下执行就是初始化这个文件夹,此时执行git status,可以看到文件夹下的所有文件都变成未被跟踪的文件。
2.3.2添加文件进本地仓库
git status #查看状态,发现文件为红色
git add + 需要添加的文件名
git add --all 将所有的文件全部添加
git status 然后再次查看状态变成了绿色,这时候文件就已经添加到暂存区了,但此时文件并没有真正进 入到版本库当中,文件目前只处于一个中间状态。
git commit -m “修改说明”。-m后面添加的是对本次操作的说明,加入你修改了代码或者重新上传了什么东西都做个简单说明。
这个命令将处于中间状态的文件(暂存区的文件)提交到版本库(隐藏的.git 文件)中,这时才算真正完成了一次提交过程
git status然后再次查看状态,
2.4将内容从本地仓库存入远程仓库
2.4.1关联远程仓库
将本地的仓库关联到github上(如果已经关联,跳过此步骤)
git remote add origin git@github com:leiphp/awesome-python3-webapp.git
2.4.2从远程仓库克隆代码下来
执行完后,如果没有异常,等待执行完就上传成功了,中间可能会让你输入Username和Password,你只要输入github的账号和密码就行了。但是在这一步很多人执行会报错,报类似failed to push some refs to…的错误,那是因为本地代码目录缺失README.md文件。我们只需要先
通过如下命令进行代码合并【注:pull=fetch+merge]
git pull --rebase origin master
执行成功后,发现test文件夹已经把github之前的代码克隆下来了
2.4.3将本地仓库上传到github远程仓库(公开代码)
git push -u origin master #当本地分支与远程未关联时
git push #关联后
3.注意事项
专栏:公开时的许可协议
即便在GitHub上公开了源代码,也不代表著作者放弃了 著作权等权利。代码的权利持有人请选择合适的许可协议。在 GitHub 上,有修正 BSD 许可协议、Apache 许可协议等多种许 可协议供人们选择,不过大多数软件都使用 MIT 许可协议。 MIT 许可协议具有以下特征。
被授权人权利:被授权人有权利使用、复制、修改、合并、出版发行、散布、 再授权和 / 或贩售软件及软件的副本,及授予被供应人同等权利,唯服从以下义务。 被授权人义务:在软件和软件的所有副本中都必须包含以上版权声明和本许可 声明。 其他重要特性:此许可协议并非属 copyleft 的自由软件许可协议条款,允许在 自由及开放源代码软件或非自由软件(proprietary…software)所使用。 MIT的内容可依照程序著作权者的需求更改内容。此亦为MIT与BSD(The… BSD…license,…3-clause…BSD…license)本质上不同处。 MIT许可协议可与其他许可协议并存。另外,MIT条款也是自由软件基金会 (FSF)所认可的自由软件许可协议条款,与 GPL 兼容。 ——MIT 许可证,Wikipedia,http://zh.wikipedia.org/,2015 年 3 月 27 日获取
详细内容请参阅原文注a。 实 际 使 用 时, 只 需 将 LICENSE 文 件 加 入 仓 库, 并 在 README.md 文件中声明使用了何种许可协议即可。 使用没有声明许可协议的软件时,以防万一最好直接联系著 作者。
注 a http://www.opensource.org/licenses/mit-license.php