注:命令checkout可以看做是切换的意思
下面是GIT的基本使用介绍,包括下载,更新,编辑,同步,上传等操作
首先从远程下载到本地
git clone git@github.com:leonzhou/xplusz.git
进入下载的项目目录
cd xplusz
切换到本地master分支
git checkout master
更新到本地master分支
git pull origin master
建立新的xplusz-leo分支
git branch xplusz-leo
切换到本地xplusz-leo分支
git checkout xplusz-leo
提交更新
[如果需要过滤掉某个文件不进行提交,需要在此执行git update-index --assume-unchanged filename]
git add .
git commit -m "adding the fobble model and migration"
-更新自己的修改到本地的版本控制中去(此操作在下一步前是必须的)
更新orign上的代码到本地master(注意:执行此步骤前需要将本地修改提交,也就是要执行上面的git commit操作,防止冲突)
git checkout master
git pull origin ??????把我新增的删除了,ls命令看不到新增的文件乐(其实不是,你执行git checkout xplusz-leo之后执行ls命令又看到了,这个挺神奇)
同步master里的最新代码到xplusz-leo分支中
git checkout xplusz-leo
git rebase master (如果rebase失败,报冲突,冲突处理完后执行git add .,然后再次执行此命令,如果无反应或者无法从master中rebase到branch,则可以先执行git rebase -abort进行终止,再次执行git rebase master命令)
---接下来需要上传我完成的功能代码啦
更新
git checkout master
git pull origin(如果有更新,还得rebase一次)(貌似我没法判断是否有更新?????只说Already up-to-date)
更新从master到branch
git checkout xplusz-leo
git rebase -i master(查一下这个命令????????????)
将在xplusz-leo分支中我做的修改更新并同步到master分支中去
git commit
git checkout master
git merge branchname
最后提交到远程去
git push origin master:master
延伸阅读:
http://www.infoq.com/cn/news/2011/03/git-adventures-branch-merge
如果要把某些文件或文件夹从版本控制中去除参考:http://hi.baidu.com/pcwung/blog/item/ff5d58825a85dba26d81191a.html