-
git概念
git与svn的最大区别是,git在本地也可以对本地库形成历史记录,可以先提交到本地库,被本地库管理,再提交到远程库(代码托管平台)。而svn在提交时只能提交到远程库(代码服务器)。 -
分支
为了能够并行进行多任务开发,不影响主分支上的代码,Git支持创建多分支,那么多分支带来的问题有哪些?
- 怎么算创建一个新分支
git branch 分支名,从哪个分支创建的,默认就是哪个分支的代码
- 切换分支
git checkout 分支名
- 合并分支
将想合并的分支合并到当前所在的分支,合并两个分支不光会将新文件合并,已经存在的文件也会进行内容合并,这个时候极有可能发生冲突。在合并分支之前,要先提交本分支的内容,否则容易被覆盖了。
git merge 分支名
如果在合并分支的过程中发生冲突,则当前分支标识后会有merging
此时需要手动合并。
在手动解决完冲突后提交本地库时,注意不要带文件名了。
- 与远程库的交互
- 远程库起别名
git remote add git-demo https://github.com/1284929849/test-zc.git
- 推送到远程库
git push git-demo master //推送的时候可指定分支名
- 拉取远程库
git pull git-demo 分支
- 克隆远程库
git clone 连接
在使用git pull时,如果远程库发生了变化,拉取后git会自动合并代码,然后提交到本地库,不需要自己再手动提交。
当推送代码时,如果远程库的代码版本已经发生了修改,则需要先更新到本地,再将本地代码提交到远程库。
Idea集成git
- 集成git客户端
- 在idea中创建git仓库
- 红色文件表示没有被git追踪在工作区
- 绿色文件表示在暂存区
5. 提交到本地库以后又变成了正常颜色
6. 设置提交时的忽略文件
# Compiled class file
*.class
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
.classpath
.project
.settings
target
.idea
*.iml
将该文件存放于git仓库的根目录下,在添加和提交时会忽略该文件中配置的规则。
- 如果一个文件颜色为蓝色,则表示被追踪过,但是又被修改了
- 选中amend可点击不同的文件,查看当前版本和上一个版本之间的变化
- 点击左下角的git可查看当前仓库的历史版本记录,点击具体的版本可查看每次的文件修改记录
- 切换版本
11. 创建分支
切换到某个分支
合并分支
合并时如果存在冲突
10.1 点击merge,手动处理冲突
10.2 手动选择代码片段或删除来解决冲突
Idea集成gitee
- 通过邮箱登录gitee(如果没有gitee插件先从插件市场进行一番下载)
- 将现有项目发布到gitee上(idea会自动创建远程库)
- 此时就把一个现有的项目推送到gitee上去了。
- 若远程库修改了可使用gitpull拉取
创建项目时拉取已有远程库(克隆)
-
选择从vcs创建项目。
-
输入项目地址以及本地项目名。