• 常用的git命令总结


    git命令:
    初始化仓库
    git init //在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹.
    git remote add origin [git address]   //与远程仓库建立连接
    git remote -v    // 查看远程连接地址
    git remote remove origin //删除远程连接
     
    克隆仓库
    git clone url   //获取一个url对应的远程Git repo, 创建一个local copy.
    git clone [url] newname  //指定特定的名称,默认clone下来的repo会以url最后一个斜线后面的名称命名,创建一个文件夹。
     
    创建/发布新分支
    git branch  branchname     // 在当前分支上创建一个branchname分支
    git checkout -b branchname   // 创建并切换分支到branchname
    git push origin  [remote branchname]    // 把当前本地分支推送到远程仓库并创建名称
     
    查看分支
    git branch      // 查看本地分支
    git branch -r   // 查看远程分支
    git branch -a   // 查看所有分支
    git branch -v   //可以看见每一个分支的最后一次提交.
    git branch -vv  //  查看本地分支和远程分支的映射关系
     
    切换分支
    git checkout branchname    // 切换分支到branchname
     
    建立/修改分支的追终关系
    git branch --set-upstream branchname origin/master // 建立本地分支branchname 并建立追踪关系,如果建立了本地仓也建立了追踪会修改追踪关系到远程分支master
    git branch --track branchname origin/master   // 建立本地分支branchname,并建立追踪关系到远程分支master
    git branch --set-upstream-to  origin/master // 修改当前分支的远程追踪关系到master
     
    拉取/更新代码
    git fetch origin branchname   // 命令来把远程branchname分支拉到本地
    git merge    //合并到本地当前分支
    git pull origin branchname  // 相当于先从远程分支branchname拉取代码,再合并到当前分支
     
    提交/推送代码
    git add .    // 把改动的代码和文件添加到本地暂存区(staging area)
    git commit  // 提交上一次暂存区的代码和文件 (只使用git commit会进入一个vim编辑器让编辑提交信息)
    git commit -m “commit message”  // 提交信息
    git commit -a -m “commit massage”  // 会自动把未add 的文件进行add然后提交
    git push   // 推送当前分支代码到远程仓库 (如果已经和远程的同名分支建立追踪关系)
    git push origin branchname  //  推送当前分支代码到远程仓库branchname
    git push origin HEAD:master  // 更新当前分支到master分支
    git push -u origin branchname 或者 git push --set-upstream origin  branchname  //push的同时会指定当前分支的upstream
    合并分支
    git merge branchname   // 合并当前分支到branchname分支
     
    删除分支
    git branch -d (branchname):   //删除本地分支
    git push origin --delete branchname  // 删除远程分支
     
    .gitignore文本忽略规则:
    语法:
    以”#”号开头表示注释;
    以斜杠“/”开头表示目录;
    以星号“*”通配多个字符;
    以问号“?”通配单个字符
    以方括号“[]”包含单个字符的匹配列表;
    以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;
    此外,git 对于 .ignore 配置文件是按行从上到下进行规则匹配的,意味着如果前面的规则匹配的范围更大,则后面的规则将不会生效;
    语法示例:
    1、规则 file/
    说明:忽略目录file下的全部内容;不管是根目录下的/file/目录,还是某个子目录/child/file/目录,都会被忽略。
    2、规则 /file/
    说明:忽略根目录下的/fd1/目录的全部内容;
    3、规则
    /*
    !.gitignore
    说明:忽略所有文件,但不忽略.gitignore文件。
     
  • 相关阅读:
    二维数组和二维指针作为函数的参数
    我所理解的tensorflow
    新篇:A New Start
    3NF(Canonical Cover and Decomposition)
    SQL: group by + having
    hihoCoder挑战赛14
    KMP算法
    二分查找
    Cellular Network
    拓撲排序
  • 原文地址:https://www.cnblogs.com/chrissong/p/10500084.html
Copyright © 2020-2023  润新知