一、写在前面
关于git,出于自己的爱好,前段时间玩了一下,也自己上网查了一下资料,现简单记录一下,以备查看。
当然,本文并不是介绍配置git服务器的文章,而是以github服务器作为git的远程仓库服务器。
二、安装
windows下使用git,需要安装msysGit,下载地址是https://code.google.com/p/msysgit/downloads/list;
安装完成后,在安装目录下,有个msys.bat文件,这个就是msysGit提供的命令行客户端;
当然就像svn一样,也有图形化的客户端工具---TortoiseGit,安装过程就不赘述了;
三、git命令的使用
既然github作为远程git仓库,第一步肯定是要去github网站上注册一个帐号了;
在项目目录中,所有命令,均可通过-help查看帮助
git diff -check
检测本次提交是否有多余的空白字符,
会以红三色的空白字符提示 git log --no-merges
查看提交历史 git checkout master
切换分支(此为切换master分支) git checkout -b featureA
创建并切换到featureA分支 git fetch origin
从远端数据拉取到本地
并不合并到当前分支 git pull origin
从远端数据拉取到本地
自动合并到当前分支 git merge origin/master
分支合并(此为合并到 主分支master) git commit -am 'message'
提交到本地项目中 -a 提交所有文件 git push origin master
推送到服务器的master分支中 git push origin featureA
推送到服务器的featureA分支中 git push origin featureA:master
推送分支featureA到主分支master上 git push origin featureB:featureBee
推送分支featureB到服务器上的featureBee分支上 git branch
显示所有分支 git status
当前分支的状态
当不能上网时,也可以利用git存储版本信息,
在可以上网后,在服务器上新建资源,即可推送成功
在某个文件夹中,进行如下操作,简单的初始化
、git init 、touch README.md 、git add README.md
添加文件到暂存区
git add -A 或者 git add --all 添加当前文件夹下的所有文件 、git commit -am 'first commit' 、git remote add origin http://github.com/vvfan/test.git
已添加 origin ,则直接进行第6步 、git push -u origin master 在进行第六步之前,必须在github服务器上,新建一个test的项目资源
方可推送成功;
所以在服务器上,不论是先建项目或者后建,只要存在,都可用上面的步骤
进行初始化
Fork A Repo .fork the "Spoon-Knife" repository .git clone https://github.com/username/Spoon-Knife.git .cd Spoon-Knife git remote add upstream https://github.com/octocat/Spoon-Knife.git
添加远端仓库 upstream git fetch upstream
更新项目
clone后,本地修改添加文件 .git clone https://github.com/vvfan/vv .git checkout -b featureA
可以不创建分支,创建分支是方便管理 .(此后都在featureA分支目录下)
touch new.txt
(新建一个文件) vim new.txt
(新建并添加内容) .git add -A
添加所有修改的文件 .git commint -am 'add file' .git push origin featureA
推送到服务器上featureA分支上 .git push origin featureA:master
推送到主分支上
关于git分布式的工作流程以及项目的管理,可参考连接
http://www.uml.org.cn/pzgl/201107281.asp
search 公开的大型项目