git
一、git常用操作
/**git常用操作命令**/
1. git branch <分支名称> //创建分支
2. git checkout -b <分支名称> //创建并切换到创建的分支上
3. git branch //查看所有分支
4. git checkout master //切换到master分支
5. git merge dev //合并dev分支到master分支,前提要先切换到master分支之后,执行合并操作
6. git branch -d <name> //删除分支
7. git log //查看历史记录
git log --pretty=oneline //简约模式
8. git status //查看仓库状态
9. git checkout -- <filename> //添加到暂存区之前的撤销操作(注:add或commit之后都无法撤销修改了)
10. git rm <filename> //删除文件
/**git提交完成流程**/
1. git add . //把本地所有修改添加到暂存区
git add [filename] //添加单个文件到暂存区
2. git commit -m"注释" //提交所有本地更改到暂存区
3. git fetch 远程分支 //把远程分支的代码拉去到本地
4. git rebase //把一个分支的修改合并到另一个分支,但是git rebase与git merge的区别是:git reabse把不同的commit暂存起来,最后patch进去,只剩最后要合并的分支,在提交树上是直线式的,没有分叉,清晰直观
//如果出现冲突,则需要在本地解决冲突
4.1 git add 冲突文件
4.2 git rebase --continue
5. git push origin master
二、git常见问题解决
1.如何本地修改没有提交想切换分支会提示是否提交修改或者放弃修改
// 保留本地修改
git stash
git pull origin develop
git stash pop
// 放弃本地修改
git reset --hard
git pull origin master
2.git merge之后如何回退之前的版本
第一步:git checkout [分支] //切换到要恢复的分支上;
第二步:git reflog //查看历史版本号,找到要恢复的版本号;
//afc1edc HEAD@{1}: commit: 优化
//0d19675 HEAD@{2}: commit: 音乐配置
第三步:git reset --hard [版本号] //将本地代码回退到指定版本;
//git reset --hard 0d19675 回退到音乐配置那版体提交的版本
第四步: git push -f //将本地代码强制提交,覆盖远程git服务器代码;
3.忽略不提交本地修改的某个文件
git update-index --assume-unchanged src/main/resources/application-prod.properties //忽略不提交某个文件
git update-index --no-assume-unchanged src/main/resources/application-prod.properties //恢复忽略不提交的文件
三、git关联远程仓库
1.git关联GitHub
1.创建SSH Key
在用户主目录下(c-》用户-》USER),看看有没有.ssh目录,如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
ssh-keygen -t rsa -C "youremail@example.com"
然后一路回车,使用默认值即可
2.登陆GitHub,打开“Account settings”,“SSH Keys”页面:
点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容
3.在GitHub上创建仓库
4.在本地的learnGit仓库下运行命令:
git remote add origin git@github.com:zengshuang27/GitTest.git
5.把本地库的所有内容推送到远程库上
git push -u origin master
6.推送成功后,可以立刻在GitHub页面中看到远程库的内容已经和本地一模一样
从现在起,只要本地作了提交,就可以通过命令:
git push origin master
把本地master分支的最新修改推送至GitHub
2.git关联码云
1.克隆项目
git clone url(码云账号密码) (注:clone项目之前一定要配置一下SSH Key,否则clone不下来项目)
2.提交
git add filename 添加到仓库
git commit -m "注释" 提交代码
git push 推送到码云
git pull 更新代码