关于git:Git常用操作命令

47次阅读

共计 1834 个字符,预计需要花费 5 分钟才能阅读完成。

1. 近程仓库相干命令

  • 检出仓库:$ git clone git://github.com/jquery/jquery.git
  • 查看近程仓库:$ git remote -v
  • 增加近程仓库:$ git remote add [name] [url]
  • 删除近程仓库:$ git remote rm [name]
  • 批改近程仓库:$ git remote set-url --push[name][newUrl]
  • 拉取近程仓库:$ git pull [remoteName] [localBranchName]
  • 推送近程仓库:$ git push [remoteName] [localBranchName]

2. 分支 (branch) 操作相干命令

  • 查看本地分支:$ git branch
  • 查看近程分支:$ git branch -r
  • 创立本地分支:$ git branch [name] ---- 留神新分支创立后不会主动切换为以后分支
  • 切换分支:$ git checkout [name]
  • 创立新分支并立刻切换到新分支:$ git checkout -b [name]
  • 删除分支:$ git branch -d [name] ---- - d 选项只能删除曾经参加了合并的分支,对于未有合并的分支是无奈删除的。如果想强制删除一个分支,能够应用 - D 选项
  • 合并分支:$ git merge [name] ---- 将名称为 [name] 的分支与以后分支合并
  • 创立近程分支(本地分支 push 到近程):$ git push origin [name]
  • 删除近程分支:$ git push origin :heads/[name]

2.1 分支操作场景

基于 master 创立了一个 branch-demo 分支,将作了批改的 branch-demo 分支提交到近程的 master 分支。

  1. 应用 $ git push origin master 提交,然而显示的后果却是 ’Everything up-to-date’。
  2. 产生问题的起因是 $ git push origin master 并没有track 近程分支到本地分支中,因而默认提交的是 master 分支。
  3. 因为 master 分支默认指向了 origin master 分支,这里要应用 $ git push origin branch-demo:master,就能够把branch-demo 推送到近程的 master 分支了。

本地的某个分支 test 提交到近程仓库,并作为近程仓库的 master 分支,或者作为另外一个名叫 test 的分支,那么能够这么做。

  1. 提交本地 test 分支作为近程的 master 分支: $ git push origin test:master
  2. 提交本地 test 分支作为近程的 test 分支: $ git push origin test:test

如何想删除近程的分支?

  1. 右边的分支为空,那么将删除: 左边的近程的分支。
  2. $ git push origin :test 刚提交到近程的 test 将被删除,然而本地的还是会存在的。

3. 版本 (tag) 操作相干命令

  • 查看版本:$ git tag
  • 创立版本:$ git tag [name]
  • 删除版本:$ git tag -d [name]
  • 查看近程版本:$ git tag -r
  • 创立近程版本(本地版本 push 到近程):$ git push origin [name]
  • 删除近程版本:$ git push origin :refs/tags/[name]

4. 子模块 (submodule) 相干操作命令

  • 增加子模块:$ git submodule add [url] [path]

如:$ git submodule add git://github.com/guoye/demo.git src/main/webapp/demo

  • 初始化子模块:$ git submodule init —- 只在首次检出仓库时运行一次就行
  • 更新子模块:$ git submodule update —- 每次更新或切换分支后都须要运行一下
  • 删除子模块:(分 4 步走哦)
  1. $ git rm --cached [path]
  2. 编辑“.gitmodules”文件,将子模块的相干配置节点删除掉
  3. 编辑“.git/config”文件,将子模块的相干配置节点删除掉
  4. 手动删除子模块残留的目录

5. 疏忽文件、文件夹 不跟踪

批改根目当下的文件.gitignore,一行一个关键字,如下例

# compiled output
/dist
/tmp
/out-tsc
# dependencies
/node_modules
# System Files
.DS_Store
Thumbs.db

6. 罕用 Git 软件工具

我应用过,感觉良好的 Git 可视化工具,按罕用次数倒序

  • sourceTree
  • GitHub Desktop
  • tortoiseGit

正文完
 0