1. idea 安装 .ignore插件
1.点击File->Settings
2.在左侧菜单找到Plugins,点击Browse repositories…
3.搜索.ignore,点击Install,安装完成后就可以愉快的使用了,不过在此之前得重启IDEA
4.选择Install plugin from disk。
5.设置.gitignore file(Git)
在项目上右键->New ->.ignore file ->.gitignore file(Git)
6.先选择Example user template好了,以后有什么想过滤的可以自行添加,~最后点击Generate生成
7.设置忽略文件
/mtk/ # 过滤整个文件夹
*.zip # 过滤所有.zip文件
/mtk/do.c # 过滤某个具体文件
!src/ # 不过滤该文件夹
!*.zip #不过滤所有.zip文件
!/mtk/do.c # 不过滤该文件
8.添加需要过滤的文件
9. .gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交。如下操作
输入:
git rm -r --cached .idea 删除暂存区指定要忽略的文件夹 .idea
git commit -m “删除本地暂存区所有文件”
git push 将本地修改推送远程仓库,此时远程仓库的对应分支上就会同步本地修改,成功删除远程仓库要忽略的git文件关联。
或者:
git rm -r --cached . 删除本地暂存区所有文件(本地文件夹不受影响)
git add 重新添加暂存区文件(此时本地已经按照根目录下.gitignore文件过滤了要忽略的文件)
git commit -m “删除本地要忽略的git文件关联”
git push 将本地修改推送远程仓库,此时远程仓库的对应分支上就会同步本地修改,成功删除远程仓库要忽略的git文件关联。
2.git 常用命令
git remote -v 查看
git pull 拉取本地
git push 提交
git add .
git commit -m "提交信息"
git status 查看状态
git pull upstream dev 拉取到派生
3.git pull遇到错误:error: Your local changes to the following files would be overwritten by merge.md 处理方法
默认 master分支时候
输入以下命令
git stash
git pull origin master
git stash pop
然后diff一下文件,看看自动合并的情况,并作出需要的修改。
git stash: 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。
git stash pop: 从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。
git stash list: 显示Git栈内的所有备份,可以利用这个列表来决定从那个地方恢复。
git stash clear: 清空Git栈。此时使用gitg等图形化工具会发现,原来stash的哪些节点都消失了。
如果确定远程分支上的提交都不需要了,可以直接【不建议使用】
git push origin master -f强制让本地分支覆盖远程分支。
提交出现
hint: See the ‘Note about fast-forwards‘ in ‘git push --help‘ for details.
说是在不同的机器上做了提交,远程分支上存在本地分支不存在的提交,可以先fetch在merge,也就是pull,把远程分支上的提交合并到本地分支之后再push。 看图操作