团队开发git使用各种问题
参考:https://www.cnblogs.com/schaepher/p/4933873.html
问题-3:保持github上项目干净,对于在不同机器上运行会不同的文件不予维护(如.idea/workspace.xml)
建议:对于项目输出在项目目录中的文件不予维护
对于IDE自动生成且与项目所在目录有关的文件不予维护
将这些文件全都ignore之后可以呼叫队友来克隆项目验证一下
问题-2:不想用命令行
windows下我们使用idea开发,idea是可以配置git的
参考https://jingyan.baidu.com/article/922554466dcecb851748f464.html
问题-1:作死建议
如果想尝试一些容易导致很多错误的操作(比如和队友代码合并)
可以先再当前分支基础上新建test分支,然后进行测试
测试失败直接删掉测试分支,测试成功就merge一下或者回到原来分支重现操作即可
问题0:我们的github维护准则
由一人建立主仓库,并同时建立develop分支,主仓库下有了master和develop分支
然后每个开发者fork主仓库拥有自己的仓库,自己的仓库除了master分支,自己再建立一个dev分支用于开发
当个人dev分支稳定之后,可以把自己的dev分支合并到自己的master分支
当master分支基本完成一些功能后,把自己的master分支pull给主仓库的develop分支
主仓库的develop分支运行稳定后,把develop分支合并到主仓库的master分支
主仓库的master分支就是我们运行稳定的发布版本
问题1:切换分支命令忘记了
使用 git checkout master 即可切换到master分支
问题2:.idea/workspace.xml文件会记录本地相关内容,合并时会引起冲突
解决方法:忽略该文件,根目录下打开 git Bash
notepad .gitignore 创建.gitignore文件
在该文件下输入要忽略的文件 .idea/workspace.xml
然后把修改push到远程仓库,打开远程仓库,发现因为我们忽略了workspace.xml文件
所以我们的远程仓库都已经没有workspace.xml了
如果之前已经手滑提交到远程仓库了,那么我们只修改.gitignore文件是不够的
需要本地 git rm --cached <filename> 把忽略的文件删掉(不需要打尖括号!!!)
再push到远程仓库就可以了
问题3:git push不能直接使用/如何把我的代码同步到我自己的远程仓库上
解决方法:
git push origin HEAD 是把当前分支push到我们自己的远程仓库对应的分支
一般来说本地master分支都对应远程仓库的master分支
其他分支,如果建立分支的时候有明确对应哪个远程分支,那么是可以的
如果没有明确,那么改命令会运行失败
使用 git push origin HEAD:develop 指定push到哪一个远程分支即可
(目前我不确定会不会出现权限问题,应该不会,我猜)
问题4:如何把我自己的dev分支合并到我自己的master分支上
解决方法:切换到master分支
然后 git merge dev
会把指定分支合并到当前分支,无冲突的话会自动合并完成
问题5:如何把我自己代码推送给源仓库/主仓库
解决方法:参考一开始的链接里的描述,发送pull request
等待对方同意合并或给你其他反馈
问题6:如何把源仓库/主仓库的代码同步到我的本地
解决方法:参考一开始的链接里的描述,设置好upstream
git fetch upstream 即可获取团队项目最新版本
比如我想要把主仓库的develop分支合并到我的dev分支
那么切换到自己的dev分支,然后git merge upstream/develop即可
问题7:如何删除本地分支
解决方法:git branch -d 要删除的分支名字
问题8:github项目克隆到本地后找不到master外其他分支
解决方法:git checkout -b 本地分支名字 origIn/dev
即可让新建的本地分支继承远程仓库的dev分支
问题9:我在开发分支下作死了现在有好多冲突我不想一个一个改想回退到之前的版本
解决方法:git log 查看git日志
然后找到想要回退到版本 git reset --hrad xxxxx(版本号前5位)
参考:https://www.liaoxuefeng.com/wiki/896043488029600/897013573512192
问题10:我在本地新建了分支,想让他对应到我一个远程分支,怎么操作
解决方法:git branch --set-upstream-to=origin/remote_branch local_branch
关联之后,直接git push就会推送到关联的远程分支了
团队开发git使用各种问题的更多相关文章
- Git搭建团队开发环境操作演练
模拟创建远程git仓库 1.首先创建如下目录结构: /Users/hujh/Desktop/GitTest2/GitServer/weibo weibo是我们要创建的项目 2.切换目录 $ cd /U ...
- GIT团队开发操作
01. 建立代码仓库(专门用于团队开发的代码仓库) ========================================================================== ...
- [.net 面向对象程序设计进阶] (27) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git
[.net 面向对象程序设计进阶] (26) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git 本篇导读: 接上两篇,继续Git之旅 分布式版本控制系统 ...
- [.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit
[.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit 读前必备: 接上篇: 分布式版本控制系统Git——使用GitS ...
- [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境
[.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境 本篇导读: 前面介绍了两款代码管理工具 ...
- webstorm git团队开发技巧总结(一)
---恢复内容开始--- 1.git查看和修改用户名,邮箱 用户名和邮箱地址是本地git客户端的一个变量,不随git库而改变.每次commit都会用用户名和邮箱记录. (1)查看用户名和地址 git ...
- git 团队开发常用操作流程(适用于 gogs、gitlab、github)
git 团队开发常用操作流程(适用于 gogs.gitlab.github) NO1 项目构建者 (1)在远程仓库创建仓库 (2)将伙伴添加到仓库合作者中(无先后要求) (2)cd 到项目将要存放项目 ...
- mvn 的 provided 以及 test等等 还有git团队开发技巧
mvn 的 provided 以及 test等等 还有git团队开发技巧
- Eclipse集成Git做团队开发:分支管理
在日常开发工作中,我们通常使用版本控制软件管理团队的源代码,常用的SVN.Git.与SVN相比,Git有分支的概念,可以从主分支创建开发分支,在开发分支测试没有问题之后,再合并到主分支上去,从而避免了 ...
随机推荐
- nrm -- NPM registry 管理工具
https://cnodejs.org/topic/5326e78c434e04172c006826 cnpm:http://npm.taobao.org/
- js moment.js日期操作类 datetime,日期操作,dayjs
http://momentjs.com/ JS时间处理插件MomentJS https://juejin.im/post/5a2bdc55f265da432b4abf5e Day.js 2kB超轻量时 ...
- bzoj 1634: [Usaco2007 Jan]Protecting the Flowers 护花【贪心】
因为交换相邻两头牛对其他牛没有影响,所以可以通过交换相邻两头来使答案变小.按照a.t*b.f排降序,模拟着计算答案 #include<iostream> #include<cstdi ...
- NetCore Netty 框架 BT.Netty.RPC 系列随讲 —(前序) REST API 与 RPC 经典网络基础服务架构
在服务体系架构内,我们所知道的,有两种请求模型: Http 请求模型,以及 RPC 请求模型.因此,在一个互联网请求模型架构上,都是这两种的请求模型的向互组合. 下面给出两种常见的互联网经典基础架构图 ...
- [Usaco2015 Jan]Moovie Mooving
Description Bessie is out at the movies. Being mischievous as always, she has decided to hide from F ...
- 状态压缩+枚举 POJ 3279 Fliptile
题目传送门 /* 题意:问最少翻转几次使得棋子都变白,输出翻转的位置 状态压缩+枚举:和之前UVA_11464差不多,枚举第一行,可以从上一行的状态知道当前是否必须翻转 */ #include < ...
- ASP.NET MVC应用程序中支持用户使用腾讯QQ和微信以及新浪微博的第三方登录
什么是第三方授权登录,就是一些大家都会有的帐号如QQ.微信.淘宝.微博等账户.通过那些巨头公司提供的api直接实现登录. 当然,我们是不可能得到你的用户名和密码的.不了解的人,可能会存在这个疑虑.我们 ...
- SpringMvc下的文件上传
首先是springmvc.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=&q ...
- Js onmouseover和onmouseout小特效
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...
- swiper3初始化/swiper-init/用data实例化swiper/data-swiper
Framework7直接用data属性实例化swiper用起来很爽,刚好最近又用到swiper插件,自己写一个 HTML <div class="swiper-container sw ...