git的学习

git命令-来源文章:https://blog.csdn.net/lxw198902165221/article/details/89228458

上传到github-来源文章:https://blog.csdn.net/sunxiaoju/article/details/85314049

一、前言

1.分布式的版本管理工具:git或者svn

2.项目开始阶段,初始化项目(init),提交本地的代码到git仓库(commit),将本地git仓库的代码推送到远端库github(push)

二、git基本命令和idea操作git

idea需配置git插件:

1.初始化,创建一个git仓库,创建后会在当前目录生成一个.git文件

E:demo下git bash hear输入命令:

git init
-->
ieda中:VCS --- import into version control --- create git repository
查看:setting -- version control

2.添加文件:添加文件到缓冲区
git add fileName
添加所有文件到缓冲区
git add .
git add --all
-->
idea中:文件右击Add

3.删除本地文件
git rm filename
-->
idea中直接delete
注:
ieda中想要删除所有标红的文件,
可以把他们都加入到git仓库,然后stash change(命名1),再unstash,然后删除1

4.比较文件
git diff filename
ieda中右击三种比较compare

5.提交
提交缓冲区的所有修改到本地仓库
git commit -m "提交说明"

6.仓库日志
git log
查看仓库的操作历史:
git reflog
-->
ieda中:控制台version control --- log

7.版本回退
git reset --hard HEAD^
回退到上一个版本,HEAD当前版本,一个^代表上一个版本
回退到指定版本:
git reset --hard version001
-->
idea中:version control --- log --- 选择一个提交记录,右击:reset curren branch to here

三、git分支管理
1.查看本地分支情况,前面带*即当前分支
git branch

2.创建分支
git branch 新分支名
创建一个新的本地分支,并切换到新分支:
git checkout -b 新分支名
-->
idea中:branches
注:
远端新建一个分支,本地idea需先fetch;
当前分支是master,然后新建一个分支,则该分支是以当前分支为基础的,然后推送到远端,
或远端直接以master为基础创建一个新分支,然后本地拉取。

3.切换分支
git checkout 分支名
注:
修改了代码,还没有提交,这时需要切换分支,并提交到新分支上:
右击git Stash Changes存放改变的代码:起名001
右下角切换到xx/dev,然后Unstash Changes,选择001,再提交到新分支

4.删除本地分支
git branch -d 分支名
-->
idea中:本地分支右击delete,然后啥都不要点了,如果继续点击delete tracked beanch,
则会删除远端的该分支

5.合并
合并分支A内容到当前分支
git merge 分支A
-->
idea中:右击Merge Branches
合并解决冲突,然后推送
注:
当前分支想要合并分支A的某次提交,log中该次提交记录右击cherry-pick,然后提交-推送

6.推送到远端仓库
右击commit-push

四、git远端仓库
github、gitlab

五、实际应用
1.项目拷贝
git clone https://github.com/xxx/demo.git
把项目拷贝到指定目录下
git clone https://github.com/xxx/demo.git scDemo

2.一般先pull,如果失败,说明有冲突(指的是别人和你修改了同一个文件),
把修改的代码stash changes,再拉取,
再unstash changes,如果文件有冲突(修改在同一处了)就marge,最后commit-push

3.查看某一行代码提交情况
代码右侧右击annotate

4.master
dev
feature
test
release

六、把自己搭建好的项目上传到github
步骤:
1.github上创建一个仓库demo
2.本地创建git仓库,并把demo项目加进去(项目初始化init)
idea中: VCS -- import into version control -- create git repoistoty 创建git仓库
setting -- version control可以查看
3.所有文件是红色,不要变成绿色,然后添加.gitignore,忽略的文件会消失,
然后add,commit
4.关联本地仓库和远程仓库
idea右击remotes,添加远程仓库origin:URL https://github.com/muxisc/demo.git
5.先拉取远程仓库,远程文件有read.me文件,本地无,
故ieda直接拉会报错:fatal: refusing to merge unrelated histories
则需通过命令:
git pull origin master --allow-unrelated-histories
6.最后推送push
$ git push origin master:master

附上:

 .gitignore文件

#java
*.class
/classes

#package file
*.jar
*.war
*.ear
*.zip
*.tar.gz
*.rar

#Intellij idea
.idea/
/idea/
*.ids
*.iml
*.ipr
*.iws

#eclipse ignore
.classpath
.settings/
.project

#system ignore
.DS_Store
Thumbs.db

#maven ignore
build/
**/target

#temp file
*.log
**/logs/

把上一篇文章中搭建的springboot+mybatis+maven分布式项目上传到了github上

原文地址:https://www.cnblogs.com/muxisc/p/12001125.html