原文链接:https://blog.csdn.net/Seeyouagain9527/article/details/124127572
1、命令拉取最新的代码库
git clone 远程仓库链接
git clone https://xxx.xxx.com/xxx/xxx/xxx.git
PS E:\tmp\aaa> git clone https://xxx.xxx.com/xxx/xxx/xxx.git
Cloning into 'xxx'...
remote: Enumerating objects: 5799, done.
remote: Counting objects: 100% (5799/5799), done.
remote: Compressing objects: 100% (3214/3214), done.
remote: Total 5799 (delta 1997), reused 5545 (delta 1755), pack-reused 0
Receiving objects: 100% (5799/5799), 4.31 MiB | 40.50 MiB/s, done.
Resolving deltas: 100% (1997/1997), done.
Updating files: 100% (1780/1780), done.
2、切换到要删除文件的分支
git checkout 分支名称
3、将.idea目录加入ignore清单(如果之前已经有.gitignore文件,并且文件内容中已经有.idea,可以跳过此步骤)
echo ‘.idea’ >>.gitignore
此时ignore清单中只有.idea类型文件
4、从git中删除idea缓存
git rm --cached -r .idea
PS E:\tmp\aaa> cd xxx
PS E:\tmp\aaa\xxx> echo ‘.idea’ >>.gitignore
PS E:\tmp\aaa\xxx> git rm --cached -r .idea
rm '.idea/.gitignore'
rm '.idea/artifacts/xxx_war.xml'
rm '.idea/artifacts/xxx_war_exploded.xml'
rm '.idea/compiler.xml'
rm '.idea/encodings.xml'
rm '.idea/inspectionProfiles/Project_Default.xml'
rm '.idea/jarRepositories.xml'
rm '.idea/libraries-with-intellij-classes.xml'
rm '.idea/libraries/Maven__antlr_antlr_2_7_7.xml'
rm '.idea/libraries/Maven__aopalliance_aopalliance_1_0.xml'
rm '.idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_3.xml'
rm '.idea/libraries/Maven__ch_qos_logback_logback_core_1_2_3.xml'
rm '.idea/libraries/Maven__com_ctrip_framework_apollo_apollo_client_1_4_0.xml'
rm '.idea/libraries/Maven__com_ctrip_framework_apollo_apollo_core_1_4_0.xml'
...
...
...
rm '.idea/libraries/Maven__org_yaml_snakeyaml_1_26.xml'
rm '.idea/libraries/Maven__xmlpull_xmlpull_1_1_3_1.xml'
rm '.idea/misc.xml'
rm '.idea/modules.xml'
5、将.gitignore文件加入git
git add .gitignore
6、提交gitiginore文件,且将.idea从源代码仓库中删除
git commit -m ‘(gitignore commit and remove .idea)’
PS E:\tmp\aaa\xxx> git add .gitignore
PS E:\tmp\aaa\xxx> git commit -m ‘(gitignore commit and remove .idea)’
[master ace6dcd] (gitignore commit and remove .idea)
82 files changed, 24 insertions(+), 1353 deletions(-)
delete mode 100644 .idea/.gitignore
delete mode 100644 .idea/artifacts/xxx_war.xml
delete mode 100644 .idea/artifacts/xxx_war_exploded.xml
delete mode 100644 .idea/compiler.xml
delete mode 100644 .idea/encodings.xml
delete mode 100644 .idea/inspectionProfiles/Project_Default.xml
delete mode 100644 .idea/jarRepositories.xml
delete mode 100644 .idea/libraries-with-intellij-classes.xml
delete mode 100644 .idea/libraries/Maven__antlr_antlr_2_7_7.xml
delete mode 100644 .idea/libraries/Maven__aopalliance_aopalliance_1_0.xml
delete mode 100644 .idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_3.xml
delete mode 100644 .idea/libraries/Maven__ch_qos_logback_logback_core_1_2_3.xml
...
...
...
delete mode 100644 .idea/libraries/Maven__org_yaml_snakeyaml_1_26.xml
delete mode 100644 .idea/libraries/Maven__xmlpull_xmlpull_1_1_3_1.xml
delete mode 100644 .idea/misc.xml
delete mode 100644 .idea/modules.xml
7、push文件到远程(因第二步已经换到目标分支,此处不需要在指定推送到哪个分支)
git push
PS E:\tmp\aaa\integrate-parents> git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 12 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 446 bytes | 446.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
To https://geek.glodon.com/scm/integrate/integrate-parents.git
b646da8..ace6dcd master -> master