Git学习第二天:版本控制与远程仓库
2015-09-04 17:23
405 查看
查看状态
使用git status随时掌握版本库的状态,看有没有要提交的修改;
使用
git diff查看修改的内容。
版本回退
使用git log查看文件修改的历史记录,每一次提交都有一个commit id,版本回退就是将HEAD指针指向以前的commit id;
使用
git reflog查看历史命令,后悔药来着;
使用
git reset --hard xxx回退到某个版本,xxx可以用
HEAD^代替表示上一版本,用
HEAD^^表示上上个版本,用
HEAD~100表示上一百个版本,用
<commit id>表示commit id对应的版本。
工作区和暂存区
我们之前在工作区(或者说我们的工作目录)修改文件后,总是使用
git add file然后使用
git commit。这是因为我们要将修改
add到暂存区stage中,然后一次
commit到当前分支(当前是master)。
管理修改
Git管理的是对文件的修改而不是文件内容。对文件的修改如果没有add到暂存区中,就不会加到
commit中。
使用
git diff HEAD -- file查看工作区与版本库最新版本的不同。
撤销修改
改乱了工作区中文件,还没添加到暂存区:git checkout -- file撤销工作区的修改;
改乱了工作区中文件,而且还添加到了暂存区:
git reset HEAD file撤销暂存区的修改,然后再
git checkout -- file撤销工作区的修改;
改乱了工作区文件的,而且还提交了:版本回退。
删除文件
git rm file并且
git commit,从版本库中删除某一文件。当然,后悔的话还可以版本回退,但是会丢失最近一次提交后你修改的内容;
在工作区中误删了文件了,可以从版本库中还原:
git checkout -- file,因为删除文件被认为是一次修改;
关联远程仓库
注册Github账号;执行
ssh-keygen -t rsa -C "youremail@example.com"创建SSH Key,默认保存到用户主目录的
.ssh文件夹中的
id_rsa和
id_rsa.pub文件中;
在Github的设置那里添加SSH keys,复制
id_rsa.pub文件的内容;
在Github上创建一个仓库;
执行
git remote add origin https://github.com/LinLshare/test.git[/code]关联远程仓库;-
执行git push -u origin master推送本地仓库到远程仓库(-u用来关联本地和远程的master分支,之后的更改推送不需要这个参数);克隆远程仓库
创建远程仓库比如test;
克隆远程仓库到本地git clone https://github.com/LinLshare/test.git[/code]
相关文章推荐
- 怎样用maven构建项目
- 将两个有序表合并成一个非递减的有序表算法
- uva 129(困难的串)
- 发布 asp.net网站 到本地IIS
- 通用命名前缀
- fprintf fputs 函数学习
- Toast,Dialog,PopupWindow,Notification
- Java虚拟机学习(一)
- 兼容Android API 2.X的涟漪点击效果
- 语言区域代码
- 常用数据库链接字符串
- 搭建内部YUM源
- POJ 1679 The Unique MST
- hash 表达式树 UVa 12219 Common Subexpression Elimination
- Linux时区信息和修改
- NOI 2007 社交网络 (COGS 15) Floyd求最短路及方案数
- [JNI] Java 调用 C++ dll
- 使用Eclipse的Working Set管理项目
- Poj 2774 Long Long Message (后缀数组)
- XML Schema