Git代码管理
一、git常用命令
1.配置用户名和邮箱
安装完成后,可用如下命令配置用户名和邮箱:
git config --global user.name “xxx”
git config --global user.email “xxx”
然后git config -l 或git config --list查看配置
2.创建仓库和提交到仓库
在文件根目录下:
git init (选择一个目录进行操作)
添加一个文件test.txt;
提交到临时仓库:
git add test.txt
提交到仓库:
git commit -m “add new file”
3.文件进行修改后提交
修改test.txt里的内容后,
(1)查看结果:
git status
(2)查看做了哪些改变:
git diff
如上图红色为之前的,绿色的为红色部分修改后的内容;
(3)提交到临时仓库
git add test.txt
git status
(4)提交到仓库
git commit -m “add test02”
git status
4.撤销修改
(1)输入有误(取消此次修改,还原到未修改前)
查看状态
git status
撤销修改
git checkout – test.txt
(2)输入有误,并且已经使用了git add
撤销修改(从临时仓库里撤销)
git reset HEAD test.txt
查看状态:git status
撤销修改(从工作区撤销修改):
git checkout – test.txt
(3)输入有误,使用了git add,并且还使用了git commit
查看提交日志:git log
回到上一个版本
git reset --hard HEAD^( ^号表示上个版本,两个 ^表示上上个版本,以此类推;这种操作后不需要再做其他操作,工作区和暂存区的都一起删除了)
查看提交日志
git log (发现最新提交的内容就没有了)
5.github
(1)github介绍
如下操作,
1.本地工作区的内容传递到暂存区;
2.暂存区内容提交到本地仓库;
3.本地仓库提交到远程仓库;
实现多人也可以git push操作提交到远程仓库。
(2)配置密钥
查看是否存在id_rsa和id_rsa.pub文件
cd ~/.ssh
如果没有SSH Key,则需要先生成一下
ssh-keygen -t rsa -C “xxxx@gmail.com”(需要先cd ~/进入到这个目录下,dir查看是否有.ssh,如果有的话可以直接执行start . 打开存放密钥的目录;如果没有.ssh可以创建后执行创建密钥的命令)
复制 id_rsa.pub里的文本,到github网址:github,登录自己的账号。
点击settings选择SSH and GPG keys,点击New SSH key将windows电脑刚才生成的ssh得id_rsa.pub里的内容配置好;
(3)git push上传到远程仓库
添加远程仓库
git remote add origin git@github.com:xxx
将本地代码上传到远端
git push -u origin master(第一次关联需要执行-u origin master远程的origin分支去关联master分支,后续可以直接用git push提交)
示例:
在github上先创建一个仓库,如下选择Your repositories,
然后点击New创建一个新的,
如下输入名字
远程分支创建好后,执行命令将本地仓库上传到远程仓库(ps:我的密钥可能没配置好,导致需要手动输入配置)
然后可以在github上查看上传成功,如下:
(4)git rebase
git rebase -i 36224db(36224db为github 如下)
pick:保留该commit(缩写:p)
reword:保留该commit,但我需要修改该commit的注释(缩写:r)
edit:保留该commit,但我要停下来修改该提交(不仅仅修改注释)(缩写:e)
squash:将该commit和前一个commit合并 (缩写:s)
fixup:将该commit和前一个commit合并,但我不要保留该提交的注释信息 (缩写:f)
exec:执行shell命令(缩写:x)
drop:我要丢弃该commit(缩写:d)
6.Git分支管理
创建分支:git branch dev
切换到dev分支:git checkout dev
查看分支:git branch
在新分支上做修改,然后合并到master,示例如下:
目前处于dev分支,然后在工作目录下的test.txt新增内容:test branch
提交到临时仓库:
git add test.txt
git commit -m “add test branch”
查看提交日志:git log
如下图,可以看到是在dev分支进行了修改,这样master分支的内容就落后了,确定dev分支的内容没有问题后,需要切换到master分支然后合并dev分支的内容;
切换master分支:git checkout master
查看分支状态:git branch
把dev分支的合并到master分支上:git merge dev
如下提示被修改,2个增加一个删除
查看合并日志:git log
合并完成,删除dev分支:git branch -d dev
查看分支:git branch (只有master)
二、IDE工具的git集成
1.IDE配置git和github
以IDEA为例:
(1)进入设置界面,如下图Version Control->GitHub,添加github账号
(2)如下图所示配置git的执行地址,如果与自动配置的一样就不需要修改
2.IDE创建本地git仓库和远程仓库配置
如下图操作,创建本地git仓库
然后将本地仓库的内容,提交到已经创建好的github远程仓库,右键项目,如下图操作:
然后填入已经创建好的远程分支
3.IDE提交代码到远程仓库
如下,提交代码到本地仓库:
勾选要上传到本地仓库的文件
再操作push推送到github远程仓库
上传到远程仓库成功后,可以再github查看到上传内容;
4.GitHub新增文件后,IDE本地拉取示例
在github的该远程仓库新增test01文件后,点击pull按钮拉取,如下:
github上的拉取成功,如下:
5.IDE里输入错误撤销
(1)在文件里输入大量错误信息,不想手动一个个删除
点击错误输入地方左边的条形,选择show diff
能对比此段内容的差别,点击确定替换,就能将刚才错误输入的全部删除;
(2)输入错误,并且已经commit到本地仓库
在log里查看提交记录,如下图:
选中想要回到的版本,点击右键,再如下操作:
然后根据实际情况,选择reset方式,
(3)输入错误,commit到了本地仓库,并且push到了远程仓库
6.IDE本地分支切换和代码合并
点击工具右下角,选择new branch
同样创建成功后,可以在IDEA右下角查看,目前处于dev分支,也可以点击master分支,选择checkout进行切换为master。
切换为master后,选中dev分支未合并内容,点击右键合并到目前的master分支,如下操作:
本地合并完成后,push到远程仓库。