clone
cd D:\devworkspace\gitworkspace
git clone http://username@stash/scm/testproject.git新增一个文件
2.1 手动创建eas/xm.txt
2.2 使用 git status 查看:
显示有文件需要 add
2.2 使用git add eas/ 命令后,再使用git status命名查看。提示有文件已经添加了。
提交到本地库
git commit -m “xueming Test”push 到远程库
git push origin master:master
以下写法:
git push branchname
会push 到远程同名的分支, 如果不存在的话, 就建立。这里的master就没有这个问题了。
git push :
执行之后, 会提示版本进版前后的版本号。
这里的 f0f994f 是前一版
28795ff 是最新版。
在bitbucket 上勀看到最新的版本的变化。
- 本地branch的建立。
git checkout -b mybranch origin/mybranch
这里假设远端暂时只有一个master, 从master建立一个branch.
使用 git checkout -b xmbranch 就可以了
使用git branch 就可以看到本地的所有branch, 已经目前所在的branch
- 远端branch的建立
git push origin xmbranch:xmbranch
远端branch也可以在bitbucket网页上直接建立。
再使用网络图看一下:
HEAD:
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭
git show HEAD
查看当前的版本。
通过上面的操作, HEAD现在指向 xmbranch, 版本是 28795ff , 也就是最新版。
在 xmbranch 修改 xm.txt, 在 master 修改xm.txt, 再把branch merge回master.
在xmbranch 修改 xm.txt, 提交后push
切换到master, pull 代码, 并执行merge
git checkout master
git pull origin master
git merge xmbranch
提示有冲突需要解决。 因为同一份文件被修改了。
- 冲突解决
Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容,修改如下后保存。 add 之后push
git add eas/
git commit -m “conflict fix”
git push origin master
版本回退
- git reflog
- git reset –hard 指定版本号
- git push –set-upstream origin master
fast forward能够保证不会强制覆盖别人的代码,确保了多人协同开发。尽量不要使用non fast forward方法提交代码。