一、GIT基础
1、初始化一个Git仓库,使用git init命令。
2、添加文件到Git仓库,分两步:
使用命令git add
使用命令git commit -m
3、要随时掌握工作区的状态,使用git status命令。
如果git status告诉你有文件被修改过,用git diff可以查看修改内容。
4、版本管理
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。
穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本
Git是如何跟踪修改的,每次修改,如果不用git add到暂存区,那就不会加入到commit中。
5、回退
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD
6、删除
命令git rm用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容
7、远程仓库
1)创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
$ ssh-keygen -t rsa -C "[email protected]"
2)登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容
3)你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举多得。
首先,登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库:
根据GitHub的提示,在本地的learngit仓库下运行命令:
$ git remote add origin [email protected]:michaelliao/learngit.git
关联后,使用命令git push -u origin master第一次推送master分支的所有内容;
此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;
****这种方法不行的话,可以本地新建目录,从远程克隆git clone git@gitlab.*.com.cn:mk/test.git,修改本地代码如t1,修改git add t1、提交git commit -m altertest2,再拉git pull,最后推到远程仓库git push。
二、IDEA中的GIT使用
1、用命令克隆
找到路径,右键git bash,在命令窗口
git clone git@gitlab.***.com.cn:air/airtest.git
2、使用Idea打开刚才clone的项目,在Settings->Version Control->Git中配置Git
3、配置忽略的属性文件,在Settings->Version Control->Ignored Files中配置
4、选中要提交的文件右键提交
提交后就由红色变绿色了
5、提交到远程仓库
提交成功后显示就空了
远程如果没有的话,可以在项目那右键
在远程仓库看到就成功了
6、其他说明
每一步操作都可以在Version Control工具中的Console里看到对应的命令
创建分支,标签,切换分支等等一系列Git的操作
log查看
删除本地文件后 Git从远程仓库重新获取
删除本地文件后,想从远程仓库中从新Pull最新版文件。
Git提示:up-to-date,但未得到删除的文件
原因:1、当前本地库处于另一个分支中,需将本分支发Head重置至master.
git checkout master
git reset --hard
2、git 强行pull并覆盖本地文件
git fetch --all
git reset --hard origin/master
git pull
查参考:初次学习的Git的童鞋可以到此网站学习:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
官网教程:https://git-scm.com/book/zh/v2
IDEA中的GIT使用:https://my.oschina.net/u/2608182/blog/745178
https://www.jianshu.com/p/b02df380e170
https://blog.csdn.net/huangfan322/article/details/53220060
https://blog.csdn.net/autfish/article/details/52513465
https://blog.csdn.net/ffscript/article/details/74450821