学习资料:java
http://blog.csdn.net/autfish/article/details/52513465 (关于提交的讲解)git
http://blog.csdn.net/ck4438707/article/details/53455962(关于分支的讲解比较好)github
1、新建java项目学习
2、在setting-->version control-->GitHub中配置帐号密码网站
3、.net
一、选择VCS - > Import into Version Control -> Create Git Repository3d
二、接下来指定本地仓库的位置,按我的习惯指定便可,例如这里选择了项目源代码同目录blog
点击OK后建立完成本地仓库,注意,这里仅仅是本地的。下面把项目源码添加到本地仓库。同步
下图是Git与提交有关的三个命令对应的操做,Add命令是把文件从IDE的工做目录添加到本地仓库的stage区,Commit命令把stage区的暂存文件提交到当前分支的仓库,并清空stage区。Push命令把本地仓库的提交同步到远程仓库。源码
4、
一、将项目托管到github,在github创建远程仓库
二、输入电脑解锁密码
三、仓库名称为GitHubIDEA,此时github网站上就有你的仓库,仓库里有你的项目了
5、add--commit and push
将本地的master分支 push 到 远程的master分支
---------------------------------------------------------------------------------------------------------------------------------------------------------------
当前分支是newbranch,本地分支有两个:newbranch和master,master就是本地主分支。本地有个master主分支,远程也有个master主分支(即RemoteName/master)
你在一个分支上作修改,不会影响另外一个分支,接下来我作个实例:
注意:在一个分支上作了修改以后,必定要记得add+commite
新建一个分支newBranch ,开始的时候,这个分支里的代码,与本地master代码同样,后来我改动了newBranch的代码,而且add--commite,即提交到本地,而后就变成了下面截图的样子,注意看version control:
1/head 指向 newBranch,说明当前分支是newBranch分支
2/master与RemoteName/master 在一块儿,说明master分支与远程master分支是一致的,而二者与newBranch分支不一致
将newBranch的修改,合并到master中,此时master分支指向与newBranch分支同一版本
而后将本地master push,此时远程仓库的master版本也跟本地一致了
------------------------------------------------------------------------------------------------------------------------------------------------------------
继续一个案例
在newBranch中添加一句话,add---commite,如截图1,而后push到远程,如截图2.你会发现,并不是是push到远程的RemoteName/master分支,而是在远程仓库新建了一个为RemoteName/newBranch的分支
此时多了一个远程分支RemoteName/newBranch
在master分支增长一句话,此时master与newBranch不一致,而后push master到远程仓库RemoteNmae/master