前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java开发环境系列:版本控制Git&GitHub实用教程

Java开发环境系列:版本控制Git&GitHub实用教程

作者头像
架构师小跟班
发布2019-08-06 17:29:42
1K0
发布2019-08-06 17:29:42
举报
文章被收录于专栏:架构师小跟班
文章背景

网上的教程,大多数都是通过命令来实现远程仓库的克隆、修改、提交等操作,但是真正在公司里,大多数时候都是将Git集成在IDE(如Idea、Eclipse),或使用图形化工具来对仓库进行管理。讲真的,使用命令操作除了更装逼毫无实际意义。

第一部分:Git基础概念

1、Git基础介绍

最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑。不过,慢慢地有人把它移植到了Windows上。现在,Git可以在Linux、Unix、Mac和Windows这几大平台上正常运行了。

基于Git进行开发时,首先需要将远程仓库代码clone到本地,即为本地仓库。后续大部分时间都是基于本地仓库上的分支进行编码,最后将本地仓库的代码合入远程仓库。

2、远程仓库

主线分支

主线分支也叫master分支,用于产品对外正式发布使用,最终所有特性的代码都会合入主线分支

特性分支

特性分支是指按特性构建并转测试的分支,特性分支都是基于主线分支创建的,特性分支命名规则:feature_特性名称,举例 feature_ipush。特性分支,主要用于在版本迭代开发过程中,按特性转测试,多个特性之间互不依赖,并行操作提高特性上车效率。

个人特性分支

个人特性分支基于特性分支创建,增加个人特性分支的目的主要是增加审核机制,即个人特性分支合入特性分支的过程中,需要Committer审核通过才能合入。

3、本地仓库

Git本地仓库分为工作区,暂存区(index),版本库

git add:将工作区修改或新增的文件添加到暂存区

git commit:将暂且区的修改添加到版本库对应的个人本地分支中

git reset:回退commit提交

git rm --cached <file>:直接从暂存区删除文件,工作区则不做出改变。

git checkout -- <file>:会用暂存区全部或指定的文件替换工作区的文件(会清除工作区中未添加到暂存区的改动)

git checkout HEAD <file>:会用HEAD指向的分支中的全部或者部分文件替换暂存区和以及工作区中的文件(会清除工作区中未提交的改动,也会清除暂存区中未提交的改动

第二部分:git客户端的使用

1、安装Git 官网地址:https://git-scm.com/downloads 按照默认配置安装即可。

2、打开Git Bash,设置用户名和Email

$ git config --global user.name "wangxiangyu"

$ git config --global user.email "542113457@qq.com"

第三部分:TortoiseGit客户端的使用

安装TortoiseGit

官网地址:https://tortoisegit.org/

按照默认配置安装即可。安装成功后鼠标右键,会看到右键菜单里多了三个选项。  

建议先复制代码仓库地址到剪切板,然后在本地目录右键,选择Git Clone,弹出对话框,TortoiseGit工具会自动把仓库URL粘贴进去。 点击OK,将代码下载下来,然后再通过IDE开发工具(如Idea、Eclipse等)导入代码。

第四部分:免密配置

1、在git安装目录下双击bash.exe:

ssh-keygen -t rsa -C "542113457@qq.com"

可以看到,在C:\Users\Administrator\.ssh目录下生成了两个文件

id_rsa和id_rsa.pub

将id_rsa.pub文件中的内容复制到以下位置:https://github.com/settings/keys

操作步骤:settings→SSH and GPG keys→SSH keys→new ssh key

码云上SSH公钥位置:

第五部分:常见问题

remote: Incorrect username or password ( access token ) fatal: Authentication failed for 'https://gitee.com/wangxiangyu/www.jiagou1216.com.git/'

原因:用户名密码错了。 解决办法:依次点击控制面板>用户账户>凭据管理器>Windows凭据,修改git的用户名密码即可。

git did not exit cleanly (exit code 128) (1359 ms @ 2019/7/28 星期日 21:56:29) TortoiseGit disconnected no supported authentication

解决办法:

TortoiseGit -> Settings –> Network->将SSH client设置成D:\DevTools\Git\usr\bin\ssh.exe

添加环境变量:GIT_SSH=D:\DevTools\Git\usr\bin\ssh.exe

eclipse中git冲突如何解决

第一种方式:

1.右键项目->Team->选择Synchronize Workspace 

2.通过左边的列表选择冲突文件 

3.根据提示将冲突部分进行修正 

4.修改完成后,请务必commit修改的文件。(只是提交,这一步很重要) 

5.再次进行拉取操作即可

第二种方式:

右键冲突文件->team->show local history->更新到冲突前的版本。

第三种方式:

将冲突的文件加到.ignore文件中,pull代码后再从.ignore文件中删除。(这种方式很诡异,但是我有个同事用这种方式确实解决了冲突问题)

eclipse中强制覆盖更新本地代码

选择项目,右键选择Team,选择Team里面的Reset

点击Reset后弹出Reset窗口,选择Hard选项,这样就会把远端的项目完全拉下来覆盖本地,本地没有的文件也会被创建,点击确定。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-07-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第一部分:Git基础概念
  • 第二部分:git客户端的使用
  • 第三部分:TortoiseGit客户端的使用
  • 第四部分:免密配置
  • 第五部分:常见问题
    • remote: Incorrect username or password ( access token ) fatal: Authentication failed for 'https://gitee.com/wangxiangyu/www.jiagou1216.com.git/'
      • git did not exit cleanly (exit code 128) (1359 ms @ 2019/7/28 星期日 21:56:29) TortoiseGit disconnected no supported authentication
        • eclipse中git冲突如何解决
          • eclipse中强制覆盖更新本地代码
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档