例如:用eclipse创建的项目有其特定的文件,例如:.classpath
,.project
文件,而用IDEA创建的项目也有其特定的文件:.xml
,.iml
,.target
,我们需要最好忽略他们。
为什么要忽略他们?
与项目的实际功能无关,不参与服务器上部署运行。把它们忽略掉能够屏蔽 IDE 工具之间的差异。所以如果我们忽略掉,好处就是1.减少上传量;2.如果该项目是eclipse创建的,则存在eclipse的特定文件,而如果我们使用IDEA运行这些特定文件可能会干扰到运行。坏处就是我们直接用eclipse运行,但是忽略后少了这些配置文件,也运行不起来
忽略操作
1)创建忽略规则文件 xxxx.ignore(前缀名随便起,建议是 git.ignore)
这个文件的存放位置原则上在哪里都可以,为了便于让.gitconfig
文件引用,建议也放在用
户家目录C:\Users\ASUS
下。
git.ignore 文件模版内容如下:
# 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
2)在.gitconfig 文件中引用忽略配置文件(此文件在 Windows 的家目录中)
[user]
name = Layne
email = [email protected]
[core]
excludesfile = C:/Users/asus/git.ignore
注意:这里要使用“正斜线(/)”,不要使用“反斜线(\)
我的安装目录为:D:\ProgramSofts\Git\bin\git.exe
,版本为2.33.1
选择要创建 Git 本地仓库的工程
点击OK后,gitTest项目就初始化为本地库了,在IDEA下项目的所有文件名都是红色的,这表示文件都在工作区中,尚未被追踪(加入暂存区)
右键点击项目(可以以项目为单位进行选择或者以文件为单位)选择 Git -> Add 将项目添加到暂存区。
方式一:以项目为单位
方式二:以未提交到暂存区的文件为单位
Add后项目下所有的文件名都为绿色,这表示添加到暂存区了。
方式一:以项目为单位
方式二:以未提交到本地库的文件为单位
提交信息,同时取消勾选代码分析
提交完成后项目下的文件名又变为黑色。
每当对一个文件进行修改后,右键项目或该文件选择Git->commit file/directory都视为提交一个新的版本。
在 IDEA 的左下角,点击 Version Control,然后点击 Log 查看版本
选中某个版本后右键选择要切换的版本,然后在菜单里点击 Checkout Revision。
直接使用切换版本不就好了吗?
两者的处理场景并不一样,版本切换是一个项目已经开发完毕了,提交产生的一个新的版本,如果我们不满意这个版本,我们可以切换到上一个版本去。分支切换是项目在开发过程中,一个项目需要进行功能扩展,分支类似将此时的项目进行拷贝,将副本给开发人员进行开发,开发好后合并到主线上去,合并的主线分支又是一个新的版本。N个人之所以可以同时进行功能扩充,是因为分支的存在,N个人进行功能扩充,就存在N条分支,每次开发完成进行提交就产生一个新的版本,开发完毕就存在N个新版本。所以最主要的区别是分支可以对同一版本的项目进行功能扩展,每个人将自己需要实现的接口开发好后,负责人可以合并他们的代码形成一个新的版本,但是如果只使用版本是无法合并代码的。(其实不用纠结,好好理解分支的优势就明白为什么存在分支切换了。)
1)直接点击IDEA右下角Git->New Branch(或者是一个➕号)
2)或者在项目或者某个文件选择Git,在 Repository 里面,点击 Branches 按钮,在弹出的 Git Branches 框里,点击 New Branch 按钮。
然后再 IDEA 的右下角看到 hot-fix,说明分支创建成功,并且当前已经切换成 hot-fix 分支
然后在 IDEA 窗口的右下角看到了 master,说明 master 分支切换成功。
在 IDEA 窗口的右下角,将 hot-fix 分支合并到当前 master 分支。
如果代码没有冲突,分支直接合并成功,分支合并成功以后,代码自动提交,无需手动提交本地库。
如果 master 分支和 hot-fix 分支都修改了同一处代码,在合并分支的时候就会发生冲突。
(1)点击 Conflicts 框里的 Merge 按钮,进行手动合并代码。
(2)手动合并完代码以后,点击右下角的 Apply 按钮。
(3)代码冲突解决,自动提交本地库。
一、在idea中setting中搜索GitHub,填好用户名和token,注意用token登录,现在不支持用户名和密码登录了。
二、这个token要从GitHub上获取
填入token对应信息,勾选必要权限:repo + gist + delete_repo
5. 复制生成的token
三、在idea中填入复制的token
分享操作包括:1.新建远程库;2.推送当前分支内容到远程库
实际工作中,每完成一个小功能,就提交一次,写清楚注释,下班前,代码全部push到远程仓库,前提是代码不要报错
Remote:远程仓库别名
push前先pull.
右键点击项目,可以将当前分支的内容 push 到 GitHub 的远程库中或者点击VCS下的Git
注意:push 是将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致,push 的操作是会被拒绝的。也就是说,要想 push 成功,一定要保证本地库的版本要比远程库的版本高!因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地代码的区别!如果本地的代码版本已经落后,切记要先 pull 拉取一下远程库的代码,将本地代码更新到最新以后,然后再修改,提交,推送!所以push前先pull.
右键点击项目,可以将远程仓库的内容 pull 到本地仓库。
注意:pull 是拉取远端仓库代码到本地,如果远程库代码和本地库代码不一致,会自动合并,如果自动合并失败,还会涉及到手动解决冲突的问题。
为 clone 下来的项目创建一个工程,然后点击 Next。