Git 使用初体验
2016-03-09 00:59
253 查看
http://my.oschina.net/moooofly/blog/228608
很久之前在 http://git.oschina.net/ 上创建了一个私有项目 modb ,目的主要是用来学习如何使用 GIT 来开源自己写的东东,中间由于种种原因停顿了很长时间,但是今天,我下定决心一定要将这个事情完成,于是乎,探索之旅又开始了……
(本文以 windows 平台上的操作进行说明)
最初创建 modb 项目时,默认会产生如下 3 个文件:
.gitignore
LICENSE
README.md
其中 .gitignore 文件的作用可以参考: 《 .gitignore 文件使用说明 》
接下来只要从官网下载了最新的 Git 客户端安装使用就可以了,我安装的是最新的 Git-1.9.2-preview20140411.exe 。
首先,将 modb.git 获取到本地。
?
之后,通过编辑器创建文件 helloworld.txt。
?
通过 add 命令添加新建的文件,通过 status 命令查看此时的状态信息,通过 commit 命令在本地提交变更状态。
?
看上面的提示,以系统默认的用户名和密码来进行代码的管理似乎不妥。按照 oschina/git-osc 和《Git初体验》的说法,应该使用在 GIT@OSC 上注册的用户名和邮箱。
?
在输入命令 git commit --amend --reset-author 时,会以 VIM 编辑器的形式打开如下内容的文件。
?
直接执行 wq 保存后退出即可。
重新执行 status 命令查看状态,并使用 push 命令向服务器提交。
?
此时刷新项目网址,可以看到新的文件已经成功提交了(项目为私有,目前只有我自己能看到)。
接着测试修改文件内容的情况,在 helloworld.txt 文件中增加
?
之后查看状态
?
从输出信息中可以得知,我的修改 git 是感知的,但在我未执行 add 前,git 认为我本地代码的状态仍旧是 up-to-date with 'origin/master' 。同时 git 提示,我的修改尚未 staged for commit ,因为只有 add 后才能 commit ,所以 git 给出的结论为 no changes added to commit 。
?
此时查看 log 信息,可以看到仅有最初创建和刚刚添加 helloworld.txt 文件时的日志内容。
再次执行 add 和 commit 命令,并查看相关状态信息。
?
上述打印可以看出,我的本地代码版本已经超前 'origin/master' 分支 1 个 commit 了。此时已经没有其他需要 commit 的修改,只需要执行 push 操作将本地修改推到 GIT 服务器端。
?
从上述打印可以知道,只要执行过 commit 就会在 log 中体现出来。
此时不执行 push 动作,而是再次修改文件的内容,增加
?
之后查看状态
?
果然……同时出现了让我将(前面的)commit 进行 push 和将(后面的)修改 staged for commit 的建议。
这里我选择执行 add 命令,结果出现了关于行结束的警告,这个暂时跳过不处理。
?
执行 status 命令,发现有新的修改需要 be committed ,或者也可以使用 git reset HEAD helloworld.txt 将已经处于 staged 状态的修改回退到 unstage 状态。
?
这里执行 reset 操作进行回退。
?
可以看到,文件 helloworld.txt 已经回退到 Unstaged 状态。
重新查看 status 信息,发现状态回到了让我将 commit 进行 push 和将修改 staged for commit 的状态。
?
可以看出,此时本地版本已经处于领先于 origin/master 2 次 commit 的状态。
执行 push 命令将 2 次 commit 进行提交。
?
注:关于 “warning: LF will be replaced by CRLF” 的问题可以参考《GIT 使用时遇到的行结束符设置问题》。
很久之前在 http://git.oschina.net/ 上创建了一个私有项目 modb ,目的主要是用来学习如何使用 GIT 来开源自己写的东东,中间由于种种原因停顿了很长时间,但是今天,我下定决心一定要将这个事情完成,于是乎,探索之旅又开始了……
(本文以 windows 平台上的操作进行说明)
最初创建 modb 项目时,默认会产生如下 3 个文件:
.gitignore
LICENSE
README.md
其中 .gitignore 文件的作用可以参考: 《 .gitignore 文件使用说明 》
接下来只要从官网下载了最新的 Git 客户端安装使用就可以了,我安装的是最新的 Git-1.9.2-preview20140411.exe 。
首先,将 modb.git 获取到本地。
?
?
?
?
?
重新执行 status 命令查看状态,并使用 push 命令向服务器提交。
?
接着测试修改文件内容的情况,在 helloworld.txt 文件中增加
?
?
?
再次执行 add 和 commit 命令,并查看相关状态信息。
?
?
此时不执行 push 动作,而是再次修改文件的内容,增加
?
?
这里我选择执行 add 命令,结果出现了关于行结束的警告,这个暂时跳过不处理。
?
?
?
重新查看 status 信息,发现状态回到了让我将 commit 进行 push 和将修改 staged for commit 的状态。
?
执行 push 命令将 2 次 commit 进行提交。
?
相关文章推荐
- Android服务器配置编译指南
- 读《Android开发艺术探索》后的面试题整理
- 互联网发展的思考
- typedef/结构体/枚举/
- EL 自定义函数
- GIT问题,error:src refspec master does not match any
- thinkphp-javascript ajax上传后台 post接收不到的原因
- ER实体关系
- UVALive 3942(使用数据结构trie树加速dp)
- angularjs-ui-router-animation
- Java常用类源码分析_DateFormat类
- C语言实现通讯录
- [PHP]利用XAMPP搭建本地服务器, 然后利用iOS客户端上传数据到本地服务器中(二.配置MySQL数据库)
- 2N皇后问题
- Zabbix 3.0 安装笔记
- Ruby On Rails使用Bootstrap框架
- JavaScript变量的作用域
- kidd风的IOS日志之IOSIOS-API概述
- JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转、传参
- 【慕课笔记】5-2 字符流之文件读写流