my project 中git使用过程(基本操作流程)
1.g it clone git@name:server/BM/APPS.git
则BM_APPS.git项目被下载到当前目录下了,这时git@name:server/BM/APPS.git就是自己的origin库。
2.为自己的仓库定义别名
为方便以后操作,可给自己的仓库定义一个别名:
#git remote add fork git@name:dev/zhangsan/BM/APPS.git
3.checkout 切换到当前的开发分支,作为工作分支
git checkout origin/dev_sp4 -b dev_sp4 (也可以是
等价与两条命令:git branch dev_sp4//先创建分支 再 git checkout dev_sp4)
4.将当前分支push到git Server上的fork库中
#git push fork dev_sp4
这时BM_APPS.git项目即为开发者zhangsan自己的仓库,它相当于是从git@name:server/BM/APPS.git中fork出来的。
5.在本地dev_sp4分支上开发,开发前要先同步代码
git pull origin dev_sp4
开发者在本地进行开发(新建/修改文件)并提交(commit)。
git add .
git commit -a -m "<san_zhang@audiencetouch.com><BMS-749><dev><2011/05/03>fix BMS-749"
6.一般开发流程如下:
开发人员有新的提交后,需要将提交push到自己的fork库中,操作如下:
A.查看origin上dev_sp4分支的修改记录:
#git fetch origin dev_sp4
B.比较看和本地dev_sp4分支有没有改变:
#git diff origin/dev_sp4
C.如果有改变就要建立临时分支合并修改:
#git branch dev_sp4_tmp
#git checkout dev_sp4_tmp
#git rebase origin/dev_sp4 这是远端的内容合并到当前分支(当前为tmp分支)
D.如果有冲突就解决冲突再提交:
一般过程为:
git rebase origin/dev_sp5 //同步最新代码出现冲突git status //查看冲突文件vi conflict_files //修正冲突文件git add //重新添加文件到索引中git commit //重新提交代码git rebase --skip //跳过之前冲突的提交git rebase --continue //继续rebase,直到完成E.将merge这部分修改合并到本地dev_sp4分支:
#git checkout dev_sp4
#git merge dev_sp4_tmp
可以看出总体是,先下载总库(fetch origin)到本地dev分支(rebase),在这个分支上进行开发后,有了提交(add,commit后)。先不能提交(总库可能有变化,别人提交了),此时再fetch 总库,并合到一个新建tmp分支,处理冲突后,将最新总库内容,合并到真分支(checkout
真分支,然后rebase或者merge tmp都行),最后删除tmp
F.如果没有冲突就删除临时分支:
#git branch --d dev_sp4_tmp
G.推送代码到服务器上的fork库:
#git push fork dev_sp4
最后通过邮件或其他方式告知管理员来合并代码。
aso项目git库:
查看 cat .git/config后
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
url = git@repo.allfuck.com:aso
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[branch "waterforest"]
remote = origin
merge = refs/heads/waterforest
url是个内部代理名。我的机器是内部网络机,直接用就可以访问到代理名指定的服务器。
想换成实际ip地址,就要到服务器,去查对应的转换名。
my project 中git使用过程(基本操作流程)的更多相关文章
- git rebase 过程中遇到冲突该怎么解决?
在执行git rebase 过程中经常遇到问题,此时有点慌,一般如何解决呢? 1.先将本地的冲突手动解决 2.执行下面命令 git add . git rebase --contine //继续re ...
- SVN迁移到Git的过程(+ 一些技巧)
SVN迁移到Git的过程(+ 一些技巧) 李顺利 Key Words SVN,Git,Clone,Conversion,Tips,VCS,Pro Git 关于在VCS中SVN和Git之间的迁移(Clo ...
- SVN迁移到Git的过程(+ 一些技巧
关于在VCS中SVN和Git之间的迁移(Clone)这个部分网上已经有大批的文章介绍,而且都非常不错,能够满足我们的常见的需求,这里介绍的是我自己整理的一些技巧和使用中出现的一些问题和疑问.阅读本篇文 ...
- Xcode 中 Git 的配置与使用
Xcode 中 Git 的配置与使用主要围绕下面几个问题展开阐述: 问题1,如何在Xcode中创建本地代码库,并添加和提交代码到本地代码库? 问题2,如何在Xcode中提交推送给远程服务器代码库? 问 ...
- git 使用过程(一、准备工作)
没有多余的废话,只是纯粹的捞干的记录下一自己使用Git的过程.(正在学习中,也是刚接触,记录过程可能有点乱.等熟悉之后在重新整理一下) 一.先下载git客户端 网址:http://msysgit.gi ...
- Android开发过程中git、repo、adb、grep等指令的使用
chown 是一条在Unix系统中用于设置文件所有者和文件关联组的命令. 需要超级用户的权限才能执行此命令.只有超级用户和属于组的文件所有者才能变更文件关联组.非特权用户(非超级用户)如需要设置关联组 ...
- git 团队开发常用操作流程(适用于 gogs、gitlab、github)
git 团队开发常用操作流程(适用于 gogs.gitlab.github) NO1 项目构建者 (1)在远程仓库创建仓库 (2)将伙伴添加到仓库合作者中(无先后要求) (2)cd 到项目将要存放项目 ...
- Eclipse 中Git的使用及如何解决冲突
1. 如何导入已有Git项目 1.1 File——>import… 出现以下界面 1.2 找到Git,然后双击‘Project from Git.或者点击next 1.3 双击Clone URI ...
- idea中git pull push需要反复输入密码
在使用idea开发的过程中,在终端terminal中git pull和git push时遇到一个问题,一个是 每次提交都需要输入用户名和密码,,从网上找了下解决方案,记录一下. 解决: 打开git终端 ...
随机推荐
- iOS控制反转(IoC)与依赖注入(DI)的实现
背景 最近接触了一段时间的SpringMVC,对其控制反转(IoC)和依赖注入(DI)印象深刻,此后便一直在思考如何使用OC语言较好的实现这两个功能.Java语言自带的注解特性为IoC和DI带来了极大 ...
- 【完整的App项目】颖火虫笔记v2
好久没写博客了,一方面是因为最近确实很忙,另一方面自己在改进颖火虫笔记这款App,在前面说过该App主要是模仿的印象笔记,(还不知道的,请看:http://blog.csdn.net/htq__/ar ...
- Oracle常用语句语法汇总
第一篇 基本操作 --解锁用户 alter user 用户 account unlock; --锁定用户 alter user 用户 account lock; alter user sco ...
- Android通知Notification全面剖析
通知 通知是您可以在应用的常规 UI 外部向用户显示的消息.当您告知系统发出通知时,它将先以图标的形式显示在通知区域中.用户可以打开抽屉式通知栏查看通知的详细信息. 通知区域和抽屉式通知栏均是由系统控 ...
- Android Multimedia框架总结(二十一)MediaCodec中创建到start过程(到jni部分)
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/53386117 我最近正在参加CS ...
- 23 服务的绑定启动Demo3
MainActivity.java package com.example.day23_service_demo3; import com.example.day23_service_demo3.My ...
- Hive-ORC文件存储格式
ORC文件格式是从Hive-0.11版本开始的.关于ORC文件格式的官方文档,以及基于官方文档的翻译内容这里就不赘述了,有兴趣的可以仔细研究了解一下.本文接下来根据论文<Major Techni ...
- Android开源框架ViewPagerIndicator的基本使用
转载本博客请注明出处:点击打开链接 http://blog.csdn.net/qq_32059827/article/details/52495647 很多新闻资讯类的app都有一些共性,那就是 ...
- Android初级教程:ViewPage使用详解
转载本博客,请注明出处:http://blog.csdn.net/qq_32059827点击打开链接 ViewPage使用之一就是轮播广告,就以此为出发点,来详细解析一下ViewPage的使用和加载机 ...
- 带你深入理解STL之Vector容器
C++内置了数组的类型,在使用数组的时候,必须指定数组的长度,一旦配置了就不能改变了,通常我们的做法是:尽量配置一个大的空间,以免不够用,这样做的缺点是比较浪费空间,预估空间不当会引起很多不便. ST ...