一、将本地文件夹添加到Git仓库
1、(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库
git init
2、把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点“.”,意为添加文件夹下的所有文件
git add .
3、用命令 git commit告诉Git,把文件提交到仓库。引号内为提交说明
git commit -m 'first commit'
4、关联到远程库 git remote add origin 你的远程库地址 如:
git remote add origin github.com/XXXX/XX.git
5、获取远程库与本地同步合并(如果远程库不为空必须做这一步,否则后面的提交会失败)
git pull --rebase origin master
6、把本地库的内容推送到远程,使用 git push命令,实际上是把当前分支master推送到远程。执行此命令后会要求输入用户名、密码,验证通过后即开始上传。
git push -u origin master
状态查询命令
git status
git查看远程仓库地址命令
git remote -v
如果想要修改远程仓库地址:
git remote set-url origin '新的远程仓库地址'
然后再push:
git push origin master
二、git 全局设置用户名邮箱
1、查看git配置信息
git config --list
2、查看git用户名
git config user.name
3、查看邮箱配置
git config user.email
4、全局配置用户名
git config --global user.name "userName"
5、全局配置邮箱
git config --global user.email "eamil@XX.com"
三、git 创建分支并提交到远程
1.从已有的分支创建新的分支(如从master分支),创建一个dev分支
> git checkout -b dev
相当于
git branch dev
git checkout dev
2.创建完可以查看一下,分支已经切换到dev
> git branch
* dev
master
3.提交该分支到远程仓库
git push origin dev
4.测试从远程获取dev
git pull origin dev
5.设置git push,pull默认的提交获取分支,这样就很方便的使用git push 提交信息或git pull获取信息
git branch --set-upstream-to=origin/dev
6.取消对master的跟踪
git branch --unset-upstream master
6.现在随便修改一下工程文件的内容,然后git commit ,git push,之后就可以直接提交到远程的dev分支中,而不会是master Git鼓励大量使用分支:
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
四、git 合并分支
假如我们现在在dev分支上,刚开发完项目,执行了下列命令提交代码:
git add .
git commit -m '提交的备注信息'
git push -u origin dev
想将dev分支合并到master分支,操作如下:
1、首先切换到master分支上
git checkout master
2、如果是多人开发的话 需要把远程master上的代码pull下来
git pull origin master
//如果是自己一个开发就没有必要了,为了保险期间还是pull
3、然后我们把dev分支的代码合并到master上
git merge dev
4、然后查看状态及执行提交命令
git status
如:
On branch master Your branch is ahead of 'origin/master' by 12 commits.
(use "git push" to publish your local commits)
nothing to commit, working tree clean
//上面的意思就是你有12个commit,需要push到远程master上
> 最后执行下面提交命令
git push origin master
五、git 清除远程仓库已经删除的本地分支
查看本地分支和追踪情况:
git remote show origin
可以发现远程分支已被删除的分支,根据提示可以使用 git remote prune 来同步删除这些分支。
git remote prune origin
六、删除本地已经合并到master的分支
git branch --merged master | grep -v '^[ *]*master$' | xargs git branch -d
原理:
git branch --merged master 列出所有已经合并到master的分支
grep -v '^[ *]*master$' 在结果中排除master分支
xargs git branch -d 删除分支
其他命令
更新远程分支列表
git remote update origin --prune
查看所有分支
git branch -a
删除远程分支develop
git push origin --delete develop
删除本地分支 develop
git branch -d develop
暂存代码
git stash
弹出暂存代码
git stash pop