git相关的操作

给大家分享下git的使用心得,有不足的请大家补充:

 

因为user提交失败:git commit --amend --reset-author

 

克隆:git clone https://XXXXX

克隆指定分支:git clone -b https://XXXX

 

添加所有:git add .(注意add后面有个点

添加指定:git add XXX

添加只有跟踪的修改:git add -u

 

上传本地:git commit -m “XXX”

推送服务器:git push -u origin "branch-name"

修改commit信息修改:git commit --amend 

不修改commit信息的追加提交:git commit --amend --no-edit

 

拉取更新:Git pull origin “branch-name”

本地与远程分支同步:git pull

同步远程且拉直分支:git pull --rebase

 

合并:git merge “branch-name”(想把A分支合并到B分支,需要切换到B分支,然后执行git merge A)

 

切换分支:git checkout “branch-name”

创建分支:Git branch “branch-name”

创建并切换分支:git checkout -b “branch-name”

 

拉取查看更改:git diff HEAD^

查看本地修改:git diff

查看分支:git branch

查看远程分支:git branch -r

查看分支状态:git status

 

删除分支:git branch -d “branch-name”

删除远程分支:git branch -r -d “branch-name”

 

删除分支后还能看到分支:使用命令 git remote show origin可以查看remote地址,远程分支,还有本地分支与之相对应关系等信息,此时我们可以看到那些远程仓库已经不存在的分支,根据提示,使用 git remote prune origin 命令:

 

取消修改:git checkout .(这个只适用还没有add的操作,注意checkout后面有个点

 

取消add操作:git reset HEAD XXX/XXX/XXX.c 就是对某个文件进行撤销了

 

取消commit操作:git reset --soft HEAD^

 

filemode的变化,文件chmod后其文件某些位是改变了的,如果严格的比较原文件和chmod后的文件,两者是有区别的,但是源代码通常只关心文本内容,因此chmod产生的变化应该忽略,所以设置一下:
git config --add core.filemode false

 

解决在git上提交项目,忘记创建.gitignore进行文件过滤问题
git rm -r --cached XXX,然后在.gitignore里面添加忽略即可

 

基于某个commit打tag

git tag “name” -m “comments” aca89         git push origin --tags

删除本地tag:
git tag -d v20190514
删除远程tag:
git push origin :refs/tags/VXXX

 

posted @ 2019-04-18 16:09  徐沛东  阅读(311)  评论(0编辑  收藏  举报