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

    #git 基本用法

    下载 git

    创建新仓库

    • 创建文件夹 mkdir <dirname>
    • 创建文件 touch <filename>
    • 初始化仓库 git init

    检出仓库

    • 克隆本地仓库 git clone /path/to/repository
    • 克隆远端服务器仓库 git clone username@host:/path/to/repository

    工作流

    本地仓库由 git 维护的三棵“树”组成。第一个是你的 工作目录,它持有实际文件;第二个是 暂存区(Index),它像个缓存区域,临时保存你的改动;最后是 HEAD,它指向你最后一次提交的结果。

    添加和提交

    • 添加到暂存区 git add <filename> 或者 git add *
    • 提交代码 git commit -m "提交信息"

    推送至远程仓

    • 提交到远端仓库 git push origin master
    • 如果没有克隆现有仓库,并打算将本地仓库连接到某个远程服务器,可以使用如下命令添加:git remote add origin <server>

    分支

    • master是默认分支,开发时一般会创建一个分支,开发完成后合并到主分支
    • 创建分支 git checkout -b <branchname>
    • 切换回主分支 git checkout master
    • 删除分支 git branch -d <branchname>
    • 除非你将分支推送到远端仓库,不然该分支就是不为他人所见的 git push origin <branch>

    更新与合并

    • 更新你的本地仓库 git pull 在本地工作目录中获取(fetch)并合并(merge)远端改动。
    • 合并其他分支到当前分支 git merge <branch> 可能出现冲突(conflicts),修改冲突后git add <filename> 在合并改动之前可以使用 git diff <source_branch> <target_branch> 预览差异。

    log

    • 输出提交的历史记录 git log
    • 仅输出某一人的提交记录 git log --author=sialia
    • 输出压缩后只占一行的提交记录 git log --pretty=oneline
    • 查看那些文件改变了 git log --name-status
    • 获取其他参数信息 git log --help

    标签

    • 为软件发布创建标签 git tag 1.0.0 'commit ID'
    • 获取commit ID 使用 git log

    替换本地改动

    • 替换掉本地改动(操作失误) git checkout -- <filename> 会使用 HEAD 中的最新内容替换掉你的工作目录中的文件。已添加到暂存区的改动以及新文件都不会受到影响。
    • 假如你想丢弃你在本地的所有改动与提交,可以到服务器上获取最新的版本历史,并将你本地主分支指向它:
      git fetch origin git reset --hard origin/master
    # 设置提交时的用户信息
    git config --global user.name "用户名"
    git config --global user.email "邮箱"
    
    # 禁用git自动LF转CRLF
    git config --global core.autocrlf false
    
    # 生成密钥(默认文件名id_rsa)
    # -t 密钥类型
    # -C 注释
    ssh-keygen -t rsa -C "邮箱"
    

    在vscode集成的powerahell 中安装 posh-git 插件

    VSCode 默认使用PowerShell,启动powershell,分别执行下面3个命令(提示都输入Yes)

    # 1.设置权限
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Confirm
    
    # 2.使用PowerShellGet安装
    PowerShellGetInstall-Module posh-git -Scope CurrentUser
    
    # 3.全局导入posh-git
    Add-PoshGitToProfile -AllHosts
    

    其他git教程:http://www.bootcss.com/p/git-guide/

  • 相关阅读:
    es5预览本地文件、es6练习代码演示案例
    Java实现 LeetCode 838 推多米诺(暴力模拟)
    Java实现 LeetCode 838 推多米诺(暴力模拟)
    Java实现 LeetCode 838 推多米诺(暴力模拟)
    Java实现 LeetCode 837 新21点(DP)
    Java实现 LeetCode 837 新21点(DP)
    Java实现 LeetCode 837 新21点(DP)
    Java实现 LeetCode 836 矩形重叠(暴力)
    Subversion under Linux [Reprint]
    Subversion how[Reprint]
  • 原文地址:https://www.cnblogs.com/muqiao/p/8758827.html
Copyright © 2011-2022 走看看