Git操作基本命令
基础配置
-
git config --global user.name “xxx” #用户名
-
git config --global user.email “xxx@xx.com” #邮箱
-
git config -l|[–list]
-
git branch 查看本地分支 git branch -a 查看本地和远端所有分支
-
git branch -b course 新建一个本地的分支 //这个命令是新建一个分支,并切换到该分支上去[同一下两命令]
-
git branch course
-
git checkout -b course 基于master分支进行建立分支【一般用以上两个命令】
//新建一个远程分支(同名字的远程分支) -
git push origin course //创建了一个远程分支名字叫 course
-
把本地的新分支,和远程的新分支关联:git branch --set-upstream-to=origin/admin_edit
-
git push --set-upstream origin course
-
git clone git仓库地址–克隆
-
git config --global user.name 配置用户名称
-
git reset --hard origin/master 强制覆盖本地代码
-
git fetch --all
-
git pull 拉取更新
-
git status 查看修改编辑的状态
-
git add 可以添加文件或者目录,也可以使用通配符 add .
-
git add Readme.md # add file only
-
git add *.cpp # add all cpp files
-
git add /home/code/ # add all files in /home/code
-
git remote show origin 查看远程仓库信息
-
git diff 查看当前目录的全部修改
-
git commit -m ‘提交信息’
提交前需慎重。直接调用git commit会弹出编辑器,输入提交日志(如果是多行日志,建议使用)。
针对单行日志提交的情况,可以使用如下命令:git commit -m “add readme”。
还有一种快捷的提交方式,直接跳过stage缓存区,直接提交当前目录下的所有修改git commit -a(使用这个命令前建议确认下当前目录的修改是否正确、必须) -
git rm
git rm会把文件从当前目录删除(不会保存删除的文件)。如果需要从Git仓库中删除,但保留在当前工作目录中,亦即从跟踪清单中删除,可以使用git rm --cached readme.md -
git push -u origin “分支名称”;本地推送到远程
-
==git branch -d “分支名称” == git删除本地分支
-
git push origin --delete “分支名称” git删除远端分支
-
git branch -r -d origin/branch-name
-
git push origin :branch-name
-
git stash 查看有没有要保存的本地修改
-
git checkout – runtime/.gitignore 回复删除文件
-
git stash pop 查看贮藏条目
-
git checkout develop 切换分支到develop
-
git merge course 合并course分支到develop或者是master
-
git update-index --assume-unchanged – crontab/config.php 忽略提交
对比版本差异,获取文件名和改动状态
-
git diff --name-status commit_id1 commit_id2
-
对比版本差异,近获取文件名
-
git diff commit_id1 commit_id2 --name-only
-
修改分支名称
git branch -m oldbranch newbranch -
git checkout -b dev origin/dev 切换远程分支
-
git remote show origin 查看本地分支与远端分支的对应关系
-
git remote prune origin 移除无用的分支索引
-
git branch -r 查看远端分支
-
git status 查看当前仓库状态 保证当前分支是干净的
拉取最新的master分支代码
- git checkout master 1.切换到master分支
- git fetch 2.从远端拉取最新代码
- git rebase origin/master 3.将最新远端master应用到本地的master分支
项目上线流程【git基本操作】
基于master分支拉取一个新的分支进行功能开发(修复bug)
- 1.基于本地当前分支(master)创建一个新的分支A,分支名A是示例
- git checkout -b A
- git checkout -b A origin/A (基于远端的A分支创建本地的A分支)
- 2.进行代码修改,本机测试
- 3.添加新增或者修改的文件 git status
- git add file
- 4.提交有变化的文件到本地仓库A分支
- git commit -m “修改文件”
A分支合并到develop分支
- 1.先切换到develop
- git checkout develop
- 2.从远端拉取所有有变化的分支
- git fetch
- ==3.将最新远端master应用到本地的develop分支 ==
- git rebase origin/develop
- 4.合并A分支到develop分支
- git merge A
- 5.合并过程中解决冲突,中间如有冲突,解决冲突
- 6.合并完成 - 将本地develop分支推送到远端develop分支
- git push
- 7.develop分支jenkins部署
- ==8.develop测试 ==
- 9.develop测试通过
A分支合并到master分支
-
1.切换到master分支
-
git checkout master
-
2.从远端拉取最新代码
-
git fetch
-
3.将最新远端master应用到本地的master分支
-
git rebase origin/master
-
4.合并A分支到master分支
-
git merge A
-
5.合并过程中解决冲突,中间如有冲突,解决冲突
-
6.合并完成 - 将本地master分支推送到远端master分支
-
git push
-
7.发布到master上后,等待运维部署
-
8.在线上环境测试功能
git全局设置
- git config --global core.autocrlf false
- git config --global core.filemode false
- git config --global core.safecrlf true
git删除某个分支的方法:
*1、利用“git branch --delete dev”命令删除本地分支;
*2、利用“git push origin --delete branch”命令删除远程分支;
*3、利用“git branch --delete --remotes”命令删除追踪分支
git报错信息
运行一下命令缓存输入的用户名和密码:
git config --global credential.helper wincred
清除掉缓存在git中的用户名和密码
git credential-manager uninstall