目录标题
- IDEA不显示git push按钮的解决办法
- 一、使用idea新建一个项目
- 二、向项目添加git
- 三、add操作
- 四、commit操作
- 五、设置作者邮箱
- 六、git log 查看提交记录
- 七、git checkout --空格 filename撤销
- 八、对比文件更新前后
- 九、绑定远程仓库
- 十、gitee新建仓库。
- 十一、push推送项目
- 十二、pull拉取远程项目
- 十三、团队协作
- 十四、常见错误
- (一)idea 第一次 pull时
- (二)git pull --rebase gitee master 失败
- (三)push 推送被拒绝
- (四)拒绝push的另一种情况
IDEA不显示git push按钮的解决办法
一、使用idea新建一个项目
二、向项目添加git
$ git init
Initialized empty Git repository in D:/lihua/java code/demo-git/.git/
返回idea我们发现git相关操作已经显式出来。
注意:idea版本不同可能不会自动显式出来,可以百度idea如何配置git
三、add操作
这些标红色的就是为追踪的文件,通过git add 命令将未追踪的文件add到暂存区。
idea如何git add filename?
快捷键Ctrl+Alt+A
四、commit操作
当我们将项目放入暂存区后,可以通过commit将暂存区的内容放入资源区
方式一:
方式二:
五、设置作者邮箱
六、git log 查看提交记录
七、git checkout --空格 filename撤销
八、对比文件更新前后
九、绑定远程仓库
方式一:
点击这个按钮如果没有绑定过远程仓库,会让你绑定。
注意:这个push按钮可能没有显式出来,可以百度intellij idea不显示git push按钮的解决办法。可以参考这个方法
方式二:
如果还没有远程仓库可以先去创建。后面再来绑定
十、gitee新建仓库。
十一、push推送项目
我们先尝试直接推送项目。
原因是:远程仓库有下面这些文件
然而本地仓库却没有,文件没有同步,不能push推送。
解决:我们可以先pull拉取远程的文件到本地,先实现文件同步,再进行push推送。如何拉取可以参考本文十二。
如果始终无法push项目,那么可以参考:这篇文章解决
其他方案:
idea提交项目到github
提交到远程库错误:Push to origin/master was rejected
解决方案:git pull origin(远程仓库的地址) master --allow-unrelated-histories
十二、pull拉取远程项目
先尝试第一个,不行就尝试第二个
如果报这个错误的话可以尝试按照提示的命令去执行一次。(pull的时候,不知道拉取哪个分支)
如果无法解决,那么使用下面的命令拉取项目
$ git pull --rebase gitee master
From https://gitee.com/wuyujitang/deom-git
* branch master -> FETCH_HEAD
error: could not apply b0e1db8... 使用idea第一次提交
Resolve all conflicts manually, mark them as resolved with
"git add/rm <conflicted_files>", then run "git rebase --continue".
You can instead skip this commit: run "git rebase --skip".
To abort and get back to the state before "git rebase", run "git rebase --abort".
Could not apply b0e1db8... 使用idea第一次提交
CONFLICT (add/add): Merge conflict in .gitignore
Auto-merging .gitignore
十三、团队协作
当你push文件后出现一下界面,意味着。这个文件已经被其他开发者修改过。
这时候需要团队进行沟通,然后处理。
十四、常见错误
(一)idea 第一次 pull时
解决:不要用idea pull 使用 git bash
$ git pull --rebase gitee master
(二)git pull --rebase gitee master 失败
错误信息:注意这里不报红色
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 6 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (6/6), 5.26 KiB | 244.00 KiB/s, done.
From https://gitee.com/wuyujitang/test-git-1
* branch master -> FETCH_HEAD
* [new branch] master -> gitee/master
error: The following untracked working tree files would be overwritten by checkout:
.gitignore
Please move or remove them before you switch branches.
Aborting
error: could not detach HEAD
解决:你需要删除本地和远程中的任意一个重复的文件。
这里删除远程的。
# 再次运行
$ git pull --rebase gitee master
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 2 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (2/2), 239 bytes | 39.00 KiB/s, done.
From https://gitee.com/wuyujitang/test-git-1
* branch master -> FETCH_HEAD
7c9a5a2..fa23644 master -> gitee/master
Successfully rebased and updated refs/heads/master. # 成功
(三)push 推送被拒绝
- 可能是本地文件与远程文件不同步。远程有的文件,本地没有。
# 解决
git pull --rebase gitee master
- 可能时远程的文件被修改了,然后你又push。这样也会被拒绝。因为你不知道这个文件已经被修改过了,你此时push是很危险的。
# 解决
git pull gitee master
(四)拒绝push的另一种情况
当删除、修改、新增了远程仓库的一些文件(不是通过push命令操作的文件,而是直接在gitee上面新建、删除和修改文件)。那么当你再次push是也会发生push被拒绝的情况。
解决:不要在远程仓库上面直接操作文件。(无解)