git常用命令记录

Branch

** 创建分支**
git branch xxx
切换分支
git checkout xxx
合并在一起,创建分支并且切换到新建的分支
git checkout -b xxx
删除分支
git branch -d xxx
强制删除
git branch -D xxx
Reset 大神回答
git reset HEAD~[number]
--A--B--C(Head, branch) head当前指向C

  • --soft
  • head 指向B,但是你在C上做的改动还保留在那里,git status查看是Staged,此时如果你commit,那么C上做的改动会提交到B
  • --mixed(default)
    • head 也是指向B,但不同于soft的是,你add过得文件显示的是unstaged状态,如果想要commit,你首先还要git add
  • --hard
  • hard和mixed基本一样,除了,你在C上做的改动(包含git add 和 没有被add的修改)将会被全部remove,你会永久失去你做的修改,所以使用hard前,先执行下git status 查看是否work directory或者staged有内容

tag常用命令

git tag 列出tag
git tag -l 'v1.2.*' 列出以v1.2开头的所有tag
git tag -a xxx -m 'tag信息' 创建一个包含说明信息的tag
git show v1.1 查看tag的详细信息
git push origin v1.1 推送tag v1.1 到远程
git push origin --tags 推送所有新增的tag到远程
git tag -d v1.1 删除本地tag
git push origin :refs/tags/v1.1 删除远程tag

删除命令

git rm file1.txt
git commit -m "remove file1.txt"
如果仅仅想要删除git远程分支文件,而在本地不被移除,可以使用
git rm --cached file.txt
最后
git push origin branch_name

Checkout

git checkout -- .撤销所有未暂存的文件
git checkout -- file 撤销某个未暂存的文件

.gitignore

进入.gitignore 输入对应的语言 比如Objective-C, 自动帮你生成对应的.gitignore文件 .gitignore里面包含的文件不会上传到远程分支, 你要在执行git add .之前完成.gitignore文件的配置
如果先执行了 git add . , 可以按下列步骤操作

* 这一步的操作相当于回到 git add 之前
git rm -r --cached .
git add  .
git commit -m "xxxxxx"

查看remote

git remote
git remote -v

删除remote

git remote remove xx
git remote rm xx

切换remote

git remote rename origin old-origin
git remote add origin git@gitlab.sdjjia.com:sdjj/shanjiang.git
git push -u origin --all
git push -u origin --tags

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容