参考文章:http://www.liaoxuefeng.com/的GIT教程html
另一个小白的教程问题,能够随便看看http://www.cnblogs.com/visi/archive/2011/09/07/2169938.htmlgit
装完git软件能够设定全局用户名以及邮箱github
$ git config --global user.name "Your Name" $ git config --global user.email "email@example.com"
因此,建立一个版本库很是简单,首先,选择一个合适的地方,建立一个空目录:缓存
$ mkdir learngit $ cd learngit $ pwd #显示目前所在位置 $ git init 开启git项目模式
$ git status 查看仓库的当前状态
$ git diff [path] 查看文件被修改了哪些,彷佛得在提交前才会有输出内容
$ git log 查看commit的状况
$ git log --pretty=oneline 将commit状况给简化为一行一行,看起来舒服
$ git reset --hard HEAD^ HEAD表示当前版本,HEAD^表示上个版本,这命令的含义是恢复到上个版本
$ git reset --hard HEAD^^ 恢复到上上个版本
$ git reset --hard HEAD~100 往上前一百个版本
$ git reset --hard 13123123123 commit的编号
$ git reflog 若是git log没有最新版本的记录,能够用这个记录
$ git add . 就是把修改的文件或者添加的文件放在暂存区
$ git commit 把全部暂存区的全部修改一次性保存到分支里
每次修改,若是不add到暂存区,那就不会加入到commit中。
$ git checkout -- [path] 把[path]文件在工做区的修改所有撤销
1.若是尚未add命令,则到上一个commit的状态
2.若是在add命令以后,则到上一个add的状态
3.若是要回到add命令前的状态,就用git reset HEAD readme.txt来把暂存区的内容去掉,而后再实行这个命令
$ git rm [path] 再commit 直接从版本库里删掉 删错了,能够用 $ git checkout -- test.txt 函数来补救
再来就是在github主页新建一个项目,而后app
要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git; 关联后,使用命令git push -u origin master第一次推送master分支的全部内容; 此后,每次本地提交后,只要有必要,就可使用命令git push origin master推送最新修改;
建立删除合并分支ssh
查看分支:git branch 建立分支:git branch <name> 切换分支:git checkout <name> 建立+切换分支:git checkout -b <name> 合并某分支到当前分支:git merge <name> 删除分支:git branch -d <name>
在master分支下(不能在当前分支下删除当前分支)删除远端库的分支dev函数
git push origin --delete devspa
通常merge比较流畅的话,就是Fast-forward模式,好比原本是master分支(状态1:以前add并commit了的状态),而后建立并切换到dev模式并改写添加提交(状态2:如今在dev分支把原来从master继承下来的初始状态1改写,又addcommit了).net
这里merge的效果就是master的状态1直接就是dev的状态2code
而后就能够删除掉本地的dev分支,再删除远端库的dev分支
若是我创造了dev分支,并状态2,我又checkout回branch状态1,再修改addcommit,此时是状态3.接着我再merge的话,就麻烦了,直接告诉我问题出来了
status看看是那些文件冲突了,再看看文件
Git会用<<<<<<<
,=======
,>>>>>>>
标记出不一样分支的内容
因而咱们开始干活,解决掉冲突内容,再addcommit掉,此时是状态4,仍然在master分支下,而dev1分支仍是保持在状态2
$ git log --graph --pretty=oneline --abbrev-commit
此时能够用这个命令来看合并图
=====2014/12/14 git目前就学到这了,我感受学得差很少了,解决掉ph-pages分支应该没咋问题了,至于怎么跟别人合做问题等我对项目感兴趣再提交吧=====
ssh -T git@github.com
连上github
下载github代码到本地:
git clone git@github.com:zhko11993/zhko11993.github.io
cd到目标项目里
添加文件 :git add .
提交缓存 :git commit -m '提交';
提交到远程GitHub仓库 : git push -u origin master ;-u的zuo是做用是关联到远程库
mac
让.DS_Store不上传http://bmanlog.sinaapp.com/?p=32
对于使用git的状况:
增长.DS_Store到库的顶层目录下.gitignore文件
而后git add .gitignore
Git commit –m “.DS_Store remove”
全局配置方法:
Git config —global core.excludesfile = /path/to/.gitignore
而后配置这个.gitignore文件就像配置项目目录下的.gitignore文件同样
这里采用的办法是 http://blog.csdn.net/qq61394323/article/details/23783829