GIT

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/

git 的下载:链接:http://pan.baidu.com/s/1pKbmMrL 密码:l8rn  安装参考:http://jingyan.baidu.com/article/90895e0fb3495f64ed6b0b50.html

安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!

$ git config --global user.name "watson"
$ git config --global user.email "watson_wxc@163.com"
1.创建版本库

千万不要使用Windows自带的记事本编辑任何文本文件。原因是Microsoft开发记事本的团队使用了一个非常弱智的行为来保存UTF-8编码的文件,他们自作聪明地在每个文件开头添加了0xefbbbf(十六进制)的字符,你会遇到很多不可思议的问题,比如,网页第一行可能会显示一个“?”,明明正确的程序一编译就报语法错误,等等,都是由记事本的弱智行为带来的。建议你下载Notepad++代替记事本,不但功能强大,而且免费!记得把Notepad++的默认编码设置为UTF-8 without BOM即可。

初始化一个Git仓库,使用git init命令。(选好路径,win下路径不要有中文)

添加文件到Git仓库,分两步:

  • 第一步,使用命令git add <file>,注意,可反复多次使用,添加多个文件;

  • 第二步,使用命令git commit,完成。  git commit -m "修改说明描述" 

    2. 要随时掌握工作区的状态,使用git status命令。

        如果git status告诉你有文件被修改过,用git diff可以查看修改内容。

   3.版本回退

       用git log可以查看提交历史,以便确定要回退到哪个版本。

        如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数,输出版本号和修改说明

        git log --pretty=oneline

        HEAD指向的版本就是当前版本上一个版本就是HEAD^上上一个版本就是HEAD^^上100个版本写HEAD~100

    git reset --hard HEAD^

       Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id

        要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本

    4.工作区中有一个.git文件,是git的版本库。Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。你可以简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存区的所有修改。

    5.如果不add到暂存区,就不会加入到commit中。第一次修改 -> git add -> 第二次修改 -> git commit。第二次将不会被提交。在工作区的第一次修改被放入暂存区,准备提交,但是,在工作区的第二次修改并没有放入暂存区,所以,git commit只负责把暂存区的修改提交了,也就是第一次的修改被提交了,第二次的修改不会被提交。

  git diff HEAD -- readme.txt  命令可以查看工作区和版本库里面最新版本的区别

   6.撤销修改

  git checkout -- file  丢弃工作区的修改 

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

总之,就是让这个文件回到最近一次git commitgit add时的状态。

  git reset HEAD file可以把暂存区的修改撤销掉,重新放回工作区

小结:

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

  7.文件删除 rm filename

   在工作区新建test.txt文件,

   git add test.txt,

   git commit -m"test",

   rm test.txt ,

   git status,

 a.确定从版本库中删除   git commit -m "remove test.txt"

 b.把误删的文件恢复到最新版本   git checkout -- test.txt

小结:

命令git rm用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容

 8.github如何删除项目 http://www.youmeek.com/deleting-a-repository-from-github/

posted @ 2015-12-19 22:52  小白demon  阅读(139)  评论(0编辑  收藏  举报