git操作

全局配置

git config –global user.name “用户名” //设置用户名

git config –global user.email “邮箱” //设置邮箱

查看信息

git config –list –global

查看远程仓库

git remote

查看远程仓库详细信息

git remote -v

拉取最新仓库代码

git pull

添加远程仓库

git remote add origin

推送

git push –set-upstream origin master

用于将本地分支的提交推送到远程仓库的master分支,并建立本地分支与远程分支的关联。

然后才能直接使用下面命令

  1. git push
  2. git push origin master
  3. git pull origin master
  4. git commmit -m ‘nihao’ <文件名>

如果本地仓库不是从远程创建的,直接拉取会报错
在git pull命令后面加上:–allow-unrelated-histories

分支操作

git branch
git checkout
git merge
git checkout -b

此处的name是分支名字

进入编辑模式

  • :wq 保存退出
  • esc 直接退出
  • i 插入模式
  • :q! 不保存退出

分支冲突

本地对本地

创建冲突

1、创建本地仓库
mkdir test_git
cd test_git
git init
2、在master分支新建a和b分支
git checkout -b a
git checkout -b b
3、在b分支新建f.txt文件,修改保存,提交本地仓库
vim f.txt
输b,wq保存退出
git add .
git commit -m 'b'
3、在a分支新建f.txt文件,修改保存,提交本地仓库
git checkout a
vim f.txt
输a,wq保存退出
git add .
git commit -m 'a'
4、合并b分支,提示产生冲突
git merge b

解决冲突

1、进入产生冲突的文件
vim f.txt
2、修改文件内容,wq保存退出
3、git add标记冲突已解决,将解决后的版本commit提交到本地仓库
git add .
git commit -m 'fix conf'
4、此时a分支已经是解决完冲突后的版本,而b分支还是冲突前版本,不是最新版,所以还需要切换到b分支,合并a分支
git checkout b
git merge a

本地对远程

创建冲突

1、在本地b分支新建f.txt文件,输入内容bbb并保存,提交到本地仓库
touch f.txt
echo bbb >> f.txt
git add .
git commit -m 'b'
2、在远程仓库b分支也新建一个f.txt文件,输入内容aaa保存(目的是模拟其他用户更改相同文件)

3、push本地仓库b分支代码,出现报错,原因是远程有一部分内容在本地没有,解决办法git提示了:需要先使用git pull同步一下远程分支代码

解决冲突

1、按照提示,先pull到本地,这时会提示f.txt文件有冲突
git pull
2、打开冲突文件f.txt,修改冲突并保存
vim f.txt
3、git add标记冲突已解决
git add .
4、提交冲突解决,commit完成后相当于冲突解决快照已保存,此时冲突处理完成
git commit -m 'fix conflix'
5、推送到远程
git push

分支冲突

tag

相当于进行代码快照,记录当前状态。

  • git tag
  • git tag v0.1
  • git push origin v0.1

在IDEA中实现git

十分实用

所有操作点击右下角即可。

签出的意思是转换分支。