zoukankan      html  css  js  c++  java
  • git 操作

    基本操作

    • 初始化

    git init   当前目录就可以使用git 管理,创建一个新的目录.git

    • 暂存区操作

    git add file  添加文件到git管理  (Untracked files)

                      把已在git管理的已修改的文件提交暂存区 (Changes not staged for commit)

                      合并时把有冲突的文件标记为已解决的状态

    git diff    查看当前工作区和暂存区的差异

    git diff --staged   查看暂存区和上次提交的差异

    git commit -m 'commit discription'  提交已暂存的文件

    git commit -am 'commit discription' 跳过暂存区提交文件

    git commit  --amend  使用当前暂存区提交,修改最后一次提交

    git reset HEAD <file>  取消已暂存的文件

    git checkout -- <file>  取消对文件的修改

    git rm file  从暂存区删除该文件

    git mv file_from file_to  从命名文件

    git status   查看当前文件状态

    • 远程仓库

    git clone url  localDirctory   克隆远程项目到本地目录

    git remote  查看远程仓库

    git fetch [remote-name]   从远程仓库抓取数据

    git push [remote-name]  [branche-name]   推送数据到远程仓库

    git remote show [remote-name]  查看远程仓库信息

    git remote add origin giturl    推送本地存在的git仓库到服务器

    • 日志

    git log   查看所有日志

                 -p 显示每次提交的内容差异

                 -n(数字) 现实最近n次的日志

    标签管理

    git tag   列出所有标签

    git tag -l 'v1.*'  列出所有已v1.开头的标签

    git tag -a tagname -m 'tag discription'  添加一个含附注的标签

    git tag -s tagname -m 'tag discription'  用GPG签署标签

    git tag tagname 添加一个轻量级的标签

    git tag -d tagname 删除一个标签

    git push origin tagname  推送tag到服务器上

    git push origin --tags  推送所有tag到服务器上

    git tag -d tagname   ==> git push origin :refs/tags/tagname   删除服务器上的分支(先删除本地分支,然后推送变化到服务器)

    git clone --branche tagename url   从服务器克隆给定tag的代码

    管理分支

    • 查看分支

    git branch  当前分支列表,有“*”号的那个分支,为当前工作分支

    git branch -v  分支列表,加上最后一个提交信息

    git branch -r  查看所有远程分支

    git branch -a  查看所有分支

    git branch --merge  可以查看有哪些分支已经并入到当前分支了

    git branch --no-merge  可以查看哪些分支还没并入 当前分支

    • 添加本地分支:

    git branch branchname   创建一个本地 分支

    git checkout -b branchname     创建一个本地分支并设置该分支为当前工作分支

    • 切换本地分支:

    git checkout branchname   把当前工作分支切换到指定分支

    • 合并本地分支:

    假如你建立了一个hotfix分支,工作完成后需要把合并到master分支

    git checkout master    切换到master分支

    git merge hotfix    把hotfix分支的修改内容合并到master分支

    • 解决分支合并中的冲突:

    git 合并操作提示CONFLICT,表示出现合并冲突,使用git status 查看,both modified   fileName  表示该文件有冲突,打开该文件,可以看到:

    <<<<<<<<HEAD

    some content

    =========

    some other content

    >>>>>>>>>>>> branch name

    手工合并后保存,git status 查看后该文件状态为modified,之后提交合并结果完成冲突处理

    • 删除分支

    git branch -d branchname     删除本地分支

    • 推送本地分支

    git push origin localbranch   推送本地分支到服务上

    • 比较本地分支和远程分支

    git diff local_branch  origin/remote_branch  比较本地分支和服务器分支差异    可判断本地分支是否需要提交到服务器

    git 高级应用

    • 10个很有用的高级git命令

    http://www.oschina.net/translate/10-useful-advanced-git-commands

    • a few git tip you didn't know about

    http://mislav.uniqpath.com/2010/07/git-tips/

    • git update commit history author info

    http://blog.chinaunix.net/uid-25871104-id-3575141.html 

    get web

    • 404 - projects not found

    配置的路径,无权限,直接设置777就好

  • 相关阅读:
    Leetcode 笔记 110
    Leetcode 笔记 100
    Leetcode 笔记 99
    Leetcode 笔记 98
    Leetcode 笔记 101
    Leetcode 笔记 36
    Leetcode 笔记 35
    Leetcode 笔记 117
    Leetcode 笔记 116
    android加载速度优化,通过项目的优化过程分析
  • 原文地址:https://www.cnblogs.com/hanwwly/p/3895116.html
Copyright © 2011-2022 走看看