环境准备
- 使用前需要安装一个远程的 Git 仓库和本地的 Git 客户端。
- 由于IDEA中的Git插件需要依赖本地Git客户端,所以需要进行如下配置:
如果本地已有项目,直接通过如下操作,即可在远程自动创建仓库并关联
1. 克隆远程仓库代码(适用于本地无代码,从远程仓库 pull 下来)
注意: 克隆后的文件位置给出的文件如果不存在会自动创建,如果存在,需要为空
克隆成功
2. 初始化 git 仓库(一个新的项目,从 0 开始)
3. 提交(commit) 拉取(pull) 推送(push) 代码
有多种方式可以进行操作,文章中只列举一种
- 多人合作分支:commit → \to → pull → \to → push,防止代码丢失
- 单人分支:commit and push,后续弹窗中进行push选择
commit(将所有文件添加到暂存区中)
项目名右击
→
\to
→ Git
→
\to
→ Commit Directory…
或者直接点击小图标
界面底下,这里可以看到当前情况
4. push(将代码推送到远程仓库)
点击 push 按钮推送代码:
或者直接点击小标图
确认推送内容:
查看远程仓库发现已经提交完成:
5. pull(从远程仓库拉取代码)
在远程仓库添加一个TestPull.md文件:
从远程仓库拉取代码:
确认拉取分支信息:
6. 从本地创建分支并推送到远程
在本地创建lqh分支,点击右下角的Git:master按钮:
使用push将本地lqh分支推送到远程:
查看远程仓库发现已经创建了lqh分支:
7. 删除分支
删除分支后,需要 push 到远程仓库
8. 分支切换
从 lqh 分支切换回 master 分支:
9. Git文件冲突问题解决
修改远程仓库代码:
修改本地仓库代码:
提交本地仓库代码并拉取,发现代码产生冲突,点击Merge进行合并:
点击箭头将左右两侧代码合并到中间区域:
冲突合并完成后,点击Apply生效:
提交代码并推送到远程。
10. 合代码(不同分支合代码)
- 描述: 有分支 master,分支 lqh,现计划将分支 lqh 的部分代码合到分支 master 上
lqh 与 master 分支相同文件的差异如下(这里仅演示方便,差异不在代码而在 README.md ,代码同)
master 分支
lqh分支
- 切换本地分支为目标分支 master,即将代码合到此分支上
- 切换前先进行 fetch 操作,保证分支完备
切换为目标分支之后,对此分支进行pull操作,保证当前代码版本为最新
项目名称上右击
→
\to
→ Git
→
\to
→ Compare with branch…
选择需要合并到 master 的分支 lqh
最右边 changes 会展现两个分支之间的差异
蓝色文件:两个分支都有,但有一部分做了修改
绿色文件:分支 lqh 有,而分支 master 没有
灰色文件:分支 master 有,而分支 lqh 没有
若要合并灰色文件和绿色文件,建议:
- 先跳转到存在此文件的分支,复制备份要合并的灰色或绿色文件,
- 在切换回要合并的目标分支上,将复制好的文件粘贴到对应分支的对应包下
以下步骤为合并蓝色文件的操作
左侧为分支 lqh,右侧为分支 master,点击箭头可将分支 lqh 对当前文件的修改应用到分支 master
修改之后可看到,此文件已有蓝色标识和修改记号
将需要修改的文件修改完毕后可将代码推送到远程分支B
操作顺序:commit 修改内容 → \to → pull 再次拉取代码,保证代码最新 → \to →push修改内容到远程分支
对单独一个文件进行代码合并操作
- 在当前项目文件右击 -> Git -> compare with… 和本分支的历史版本做对比
- 在当前项目文件右击 -> Git -> compare with the Same Repository Version 和当前版本做对比(即和修改之前的做对比)
- 在当前项目文件右击 -> Git -> compare with Branch 和其他分支版本做对比