一、创建一个 repository:
1. 直接新建:
# mkdir project
# cd project
# touch README
# git init
2. 从 svn 导入:
# git svn clone svn://192.168.1.3/xxx/xxx/xxx --no-metadata
二、将 repository 推送到远程:
1. 添加远程服务器:
# git remote add orign git@192.168.3.3:himrpei/test.git
2. 查看远程服务器:
# git remote -v
3. 给远程服务器改名:
# git remote rename
4. 删除远程服务器:
# git remote delete origin
5. 将仓库推送到远程服务器:
# git push origin master //origin 是要推送的服务器,master 是要推送的分支
三、分支:
1. 创建分支:
# git branch xxx_bug_fix
2. 显示所有分支/查看当前处于哪个分支:
# git branch -a //输出所有分支,包括 push 到远程的分支。输出结果前有 * 的就是当前处于的分支
# git branch -l //显示本地分支
# git branch -r //显示 push 到远程的分支
3. 切换到某一分支:
# git checkout xxx_bug_fix
# git checkout 03c0a33e95a5 //这样也行
4. 删除一个分支:
# git branch -d test //删除 test 分支
# git branch -r -d origin/test //删除提交到远程的 test 分支
5. 提交一个分支:
# git push origin hotfix //提交 hotfix 分支到远程服务器 origin
6. 合并一个分支到主分支:
1)首先必须在 gitlab 上提交 merge request;
2) 项目经理负责将提交的分支 merge 到 master 分支。
7. 分支的意义:
可以切换到一个分支里,然后编辑文件,创建文件,stage 文件,commit 文件。其他分支的内容不与 master 分支冲突。
便于管理。
四、基本操作:
1. 将 untracked 变为 tracked:
use "git add ..." to include in what will be committed
2. 将 unstaged 变为 staged:
use "git add/rm ..." to update what will be committed
use "git checkout -- ..." to discard changes in working directory
3. 提交到本地:
git commit -m "the change log"
4. 查看与历史版本的差异:
git diff <版本 hash>
http://wangyanglong2012.blog.163.com/blog/static/203513357201332422738609/
http://blog.zfdang.com/2013/01/usage-of-git-diff/
五、正确的工作流程:
1. 用 git 管理你的本地代码,并针对新功能、hotfix 创建分支
2. 提交你的分支到 gitlab 上
3. 如果觉得没有问题了,可以提交 merge request
4. 由项目经理负责 merge 到 master 分支里
5. 你在本地 git pull origin master ,被动 merge 分支到 master。
6. 这时你就可以在本地 git branch -d control ; git branch -r -d origin/control ,删除本地的分支。(没有步骤 5 ,此步骤无法进行)
阅读(779) | 评论(0) | 转发(0) |