初始上传代码
下面的$project_root代表工程根目录
进入工程目录 cd $project_root
初始化git仓库 git init
添加文件到仓库 git add .
提交代码到仓库 git commit -m 'init commit'
链接到git server git remote add origin git@example.com:namespace/projectname.git
push代码到服务器 git push origin master
修改文件后,如何提交到git服务器?
git status 查看有哪些文件更改
(1)首先需要add,比如.config是被修改的文件,则 git add .config
(2)然后执行git commit -m “提示 修改的信息” git commit -m -a(all )
(3)然后git push 到git服务器,更新到order分支上git push --set-upstream origin order
(4)更新:git pull
(5)查看log:git log
分支
查看分支 git branch
创建order分支 git branch order
切换到order分支 git checkout order
创建order分支并切换到order分支 git checkout -b order
上传order分支 git push origin order
order分支合并到当前分支上 git merge order
order分支合并后, 删除order分支 git branch -D order
Git 获取远程分支
运行 git fetch,可以将远程分支信息获取到本地,再运行 git checkout -b local-branchname origin/remote_branchname 就可以将远程分支映射到本地命名为local-branchname 的一分支。
分支合并
http://www.cnblogs.com/mengdd/p/3585038.html
1、直接合并 straight merge
把两条分支上的历史轨迹合并,交汇到一起。
比如要把dev分支上的所有东东合并到master分支:
git checkout master
git merge dev
2、压力合并 squashed commits
将一条分支上的若干个提交条目压合成一个提交条目,提交到另一条分支的末梢。
把dev分支上的所有提交压合成主分支上的一个提交,即压合提交:
git checkout master
git merge - -squash dev
3、拣选合并 cherry-picking
拣选另一条分支上的某个提交条目的改动带到当前分支上。
每一次提交都会产生一个全局唯一的提交名称,利用这个名称就可以进行拣选提交。
比如在dev上的某个提交叫:321d76f,把它合并到master中:
git checkout master
git cherry-pick 321d76f
这样在拣选了这个改动之后,进行暂存而不立即提交,接着可以进行下一个拣选操作,一旦拣选完需要的各个提交,就可以一并提交。
版本回退
git reset
git reset --hard HEAD^(版本号)
其他命令
git log 查看记录
git reflog 记录你的每一次命令
撤销修改 命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销
撤销所有修改 git checkout -- .
删除文件 git rm