当前位置: 首页 > news >正文

微信小程序网站模板济宁市建设局网站

微信小程序网站模板,济宁市建设局网站,海南网站建设公司,取消wordpress 注册邮箱验证码Git 基础学习系列 Git 基础 —— 安装 配置 别名 对象Git 基础 —— 常用命令Git 基础 —— 常见使用场景Git基础 —— Github 的使用git init 创建 Git 本地仓库 远端无仓库#xff0c;本地无仓库#xff0c;本地新建一个仓库 git init git_learning 远端有仓库#xff0c;…Git 基础学习系列 Git 基础 —— 安装 配置 别名 对象Git 基础 —— 常用命令Git 基础 —— 常见使用场景Git基础 —— Github 的使用git init 创建 Git 本地仓库 远端无仓库本地无仓库本地新建一个仓库 git init git_learning 远端有仓库本地无仓库拉取远端仓库到本地 git clone gitgithub.com:Michael728/michael-git.git cd michael-git # 提交一个 readme 文件 touch README.md git add README.md git commit -m add README git push -u origin master 远端有空仓库本地已有项目文件关联远端仓库 查看我们当前项目有哪些远程仓库可以执行如下命令 git remote -v 如果发现没有关联远端仓库可以这么做 cd micahel-git git init # 如果本地已经是一个 Git 仓库这行就跳过 git remote add origin gitgithub.com:Michael728/michael-git.git # 添加一个远端主机并命名为 origin git push -u origin --all # --all 表示 push all branches-u 选项指定了一个默认主机 git push -u origin --tags # --tags All refs under refs/tags are pushed 将本地的master分支推送到origin主机同时指定origin为默认主机后面就可以不要再指定远端主机名 origin 了直接使用git push。 远端主机名可以定义为其他比如 github。通过 git remote add 命令一个仓库其实可以与多个远端仓库发生关联的这时候只要远端主机名取不一样的即可区别。为什么要给远程仓库取名字因为我们可能一个项目有多个远程仓库比如Github一个比如公司一个这样的话提交的时候可以提交到不同的远程仓库就需要指定不同的仓库名字了。 参考 git push 的 -u 参数具体适合含义Git远程操作详解git clone 下载一个远程仓库 git clone [-b br_name] gitgithub.com:Michael728/michael-git.git [本地仓库名] 克隆的时候可以指定下载远端的分支、自定义本地仓库的名字。如果不加分支名参数git clone 命令会默认自动设置本地 master 分支跟踪克隆的远程仓库的 master 分支其实是仓库的默认分支大部分仓库默认分支是 master。同时默认远端主机设置别名为 origin。 git mv 文件重命名 git mv old filename new filename git branch git branch -r 只显示远端分支git branch -a 显示本地分支和远程分支新建分支 新建 develop 分支并切换到 develop 分支 git branch develop git checkout develop # 新建并切换分支 git checkout -b develop 本地分支推送到远端仓库 本地分支推送到远程服务器时远程分支自动创建推送本地分支到远程 git push --set-upstream remote_host_name local_branch_name:remote_branch_name remote_host_name远程 Git 服务器名称一般为originlocal_branch_name本地分支名称remote_branch_name远程分支名称--set-upstream参数用来关联本地分支和远程分支一般情况下本地分支和远程分支名称相同所以可简化为 git push --set-upstream remote_host_name branch_name 参考 Git创建远程分支阮一峰--Git远程操作详解查看本地分支 git branch # 查看本地分支 git branch -r # 查看远端分支 git branh -av # 查看所有分支信息详细点 删除分支 删除本地分支 git branch -d develop git branch -D develop # 强制删除 删除远程分支 git push origin :remote_branch_name # 和如下命令等同 git push origin --delete remote_branch_name git add 多个场景会用到这个命令: 可以用它开始跟踪新文件把已跟踪的文件放到暂存区还能用于合并时把有冲突的文件标记为已解决状态这个是在解决冲突时会用到的功能常用命令 git add -u将文件的修改、文件的删除添加到暂存区用-u有个好处避免把工作区没准备好的新文件直接加到暂存区了用的较多git add .将文件的修改文件的新建添加到暂存区慎用git add -A/--all将文件的修改文件的删除文件的新建添加到暂存区慎用git add -A相对于git add -u命令的优点 可以提交所有被删除、被替换、被修改和新增的文件到数据暂存区而git add -u只能操作跟踪过的文件。 git diff 比较工作区和暂存区的差异 将工作区和暂存区所有文件进行比较 git diff 只对某些文件和暂存区进行比较 git diff -- README.md [filename ...] 比较暂存区和 HEAD 之间的差异 git diff --cached # 或者 git diff --staged 比较的是工作区和HEAD之间的差异 git diff HEAD 比较两个分支的差异 git diff master temp 只关心这两个分支中某个文件的差异 git diff master temp -- index.html 其实分支名就是一个指针就是一种引用可以直接使用 commit id 比较 $ git diff 622a8 7e7a -- index.html 注意了git diff A B 比较的结果可以看做是 B-A 的差集调换 A B 顺序正负号会有变化的。 git reset 暂存区文件的恢复 暂存区全部文件恢复成和 HEAD 一样 git reset HEAD reset 命令不加 --hard则暂存区的内容恢复成HEAD对应的内容工作区的变更继续保留如果加了 --hard则不管工作区还是暂存区内容都变回HEAD对应的内容危险的命令会让你在工作区的修改丢失git reset 有三个参数 --soft 这个只是把 HEAD 指向的 commit 恢复到你指定的 commit暂存区 工作区不变--hard 这个是 把 HEAD 暂存区 工作区 都修改为 你指定的 commit 的时候的文件状态--mixed 这个是不加时候的默认参数把 HEAD暂存区 修改为 你指定的 commit 的时候的文件状态工作区保持不变怎样取消暂存区部分文件的修改 git reset HEAD style.css 将工作区和暂存区保持一致 有时候修改了文件已经保存到暂存区之后又在工作区进行了修改此时发现工作的效果不如暂存区的效果好想要将工作区和暂存区保持一致。 git checkout -- file... 其实git status 都有友好的提示的 如果想要变更工作区的内容那么要想到和 checkout 命令相关如果想要变更暂存区的内容那么要想到和reset 命令相关消除最近的几次提交 丢弃一些 commit直接HEAD 指向了你指定的某个 commit同时暂存区和工作区也恢复到哪个 commit 时的状态 git reset --hard commitid 有些 commit 会丢失是条危险的命令要慎用。但是当你明确了你的需求需要将工作区暂存区提交记录明确恢复到某个 commit 状态时可以执行这个命令。 git commit 「提交」操作。当你前面采用 add 命令将文件添加到暂存区跟踪后需要通过commit将暂存区的内容提交到当前分支 git commit -m test 当一些已被追踪的文件修改后常常需要git add file然后再git commit -m xxxx其实这两个步骤可以合二为一 git commit -am test 这么写个人觉得挺好可以有效避免有些懒人git add .的方式将一切文件都添加到了暂存区导致最后多余文件提交入库。 amend 修改最近一次 commit 的 message git commit --amend 修改完 message 信息之后保存退出即可 git commit --amend命令本质上是用新的 commit 应该是替代了上一次的提交不只是修改 message。比如上一次提交时有几个文件没有 add 以及 commit可以重新进行 add 之后再 commit --amend 提交。但这次提交之后在分支的 git log 中不会增加一次新的 commit因为被替换了嘛看着效果相当于在父 commit 的基础上进行的修改。 修改历史提交的 message 信息 如图想要修改 be4c 这次提交的 message 信息那么可以使用 git rebase 命令因为 be4c 这次提交会被新的提交替换掉所以「变基」操作的「基」要选择它的父提交85807 git rebase -i 8580 -i 会进入交互模式有一系列指令操作对应的 commit不要用 pick 命令而是使用 reword 命令操作 add ref 那次 commit然后保存就进入修改 message 的窗口修改完再保存最后就会 OK 了。$ git rebase -i 8580 [detached HEAD b2b5486] Add ref projectDate: Mon Jan 14 23:56:14 2019 08001 file changed, 1 insertion(), 1 deletion(-) Successfully rebased and updated refs/heads/master. git log -3 查看最近的3次提交变为这样了会发现倒数第二次的 message 信息修改 OK 了最新一次的 message 虽然没变但其实commit id 都发生了变化「替换」的概念要记得。 git rebase 工作的过程中就是用了「分离头指针」。rebase 意味着基于新 base 的 commit 来变更部分 commits。它处理的时候把 HEAD 指向base 的 commit此时如果该 commit 没有对应branch就处于分离头指针的状态然后重新一个一个生成新的 commit当rebase 创建完最后一个 commit 后结束分离头状态Git 让变完基的分支名指向 HEAD PS对于团队中公用的分支例如发布分支等禁用 rebase因为这样会破坏历史的 commit 信息的将来要溯源、基于构建历史拉取补丁分支等就会带来极大不便。 连续多个 commit 合并 目前 commit 还在本地没有 push 到团队分支上想要将网页相关的 commit 合并成一个就是从图中 55a9 开始的6个 commit 合成一个 git rebase -i 7e7a $ git rebase -i 7e7a [detached HEAD 1c102e6] Create a complete web pageDate: Mon Jan 14 23:46:26 2019 08005 files changed, 20 insertions()create mode 100644 index.htmlcreate mode 100644 js/a.jscreate mode 100644 style.csscreate mode 100644 styles/a.csscreate mode 100755 大嘴猴-头像-logo.jpg Successfully rebased and updated refs/heads/master. 变基过程中有可能会遇到冲突的只要解决冲突即可解决冲突的时候只需要先修改有冲突的文件的内容然后执行 git add file_with_conflict即可不要再 git commit否则多出来 commit 的然后接着 git base --continue即可参考简书-git rebase解决合并冲突 历史中不连续的 commit 合并 将历史中和 readme 相关的 commit 合并就是下图中52af 7e7a 03be 这三个 commit。 git rebase -i 52af # 因为52af 是首个没有父亲因此需要补充一下 $ git status interactive rebase in progress; onto 52af14b Last command done (1 command done):pick 52af14b Next commands to do (3 remaining commands):squash 7e7a518 modify readmesquash 03bef1e Modify readme to README file(use git rebase --edit-todo to view and edit) You are currently rebasing branch master on 52af14b.(all conflicts fixed: run git rebase --continue)nothing to commit, working tree clean# michael Michael-MBP in ~/Code/Git-Geek/git_learning on git:52af14b o [17:08:05] $ git rebase --continue [detached HEAD fe08624] Add readme.mdAuthor: Michael728 michael163.comDate: Mon Jan 14 23:35:44 2019 08001 file changed, 1 insertion()create mode 100644 README.md Successfully rebased and updated refs/heads/master. 最终整理成了两个 commit 有意思的发现有两个 commit 是没有祖先的 如果将 temp 分支、js01 tag 删掉Git 会清理掉下面那个树。 git pull git pull命令的作用是取回远程主机某个分支的更新再与本地的指定分支合并。它的完整格式稍稍有点复杂 git pull 远程主机名 远程分支名:本地分支名 比如取回 origin 主机的 next 分支与本地的master分支合并 git pull origin next:master 如果远程分支是与当前分支合并则冒号后面的部分可以省略 git pull origin next # 等价于下面两个命令 git fetch origin git merge origin/next 参考 阮一峰-Git远程操作详解git push git push命令用于将本地分支的更新推送到远程主机 $ git push 远程主机名 本地分支名:远程分支名 如果省略远程分支名则表示将本地分支推送与之存在追踪关系的远程分支通常两者同名如果该远程分支不存在则会被新建。 $ git push origin master 上面命令表示将本地的 master 分支推送到 origin 主机的 master 分支。如果后者不存在则会被新建。 不管是否存在对应的远程分支将本地的所有分支都推送到远程主机这时需要使用 --all 选项 $ git push --all origin git push 不会推送标签tag除非使用 --tags 选项 $ git push origin --tags 可能会遇到 rejected 的 error因为远端包含了一些本地是没有的变更比如创建远端仓库时在远端仓库的 master 分支上新建了文件比如 License而本地是没有这次提交的 把远端拉取下来 git fetch github master 语法 git fetch 远端主机名 远端分支名 non-fast-forward 表示你本地 master 分支的演进不是基于远端 master 分支进行的二者是割裂的经过 fetch 之后通过 gitk --all 可以看到 解决这个问题可以通过 rebase 或者 merge 的方式解决现在先采用 merge 的方式 # 切到本地 master 分支 $ git merge github/master fatal: refusing to merge unrelated histories $ git merge github/master --allow-unrelated-histories Merge made by the recursive strategy.LICENSE | 21 1 file changed, 21 insertions()create mode 100644 LICENSE 上面 fetch 和 merge 方式和如下 pull 命令等效 $ git pull github master --allow-unrelated-histories 现在合并之后分支演进如下 可以看到merge 这种方式新生成的 commit 有两个父亲。 现在重新启动将本地的 master 分支 push 到远端 git push github master git rm 从 Git 中移除某个文件就必须从已跟踪的文件清单中删除从暂存区域移除文件然后提交。可以使用 git rm 命令完成此项工作并连带从工作目录中删除指定的文件以后这个文件就不会出现在 Git 库中了。 当我们先把某文件从 Git 库中删除亦即从暂存区移除但仍然希望保留在当前工作目录中。比如当你忘记在.gitignore文件中将一些文件忽略但是却不小心把大的日志文件添加到暂存区域时这一做法很有用 # --cached 将 README 文件从暂存区移除但是工作区目录仍然保留 git rm --cached README git checkout 基于某分支创建新分支 git checkout -b new_branch_name base_branch_name 这里的 base_branch_name 是指创建分支时的「基」。 当省略时就是基于当前分支创建git checkout -b new_branch_name 当这个「基」是远端分支名时就实现了在本地基于远端分支创建分支。git branch -av # 查看本地远程分支列表 git checkout -b dev origin/dev 还可以可以在checkout命令中使用 Hash 值作为起点创建分支 git checkout -b name_of_branch commit id 除了有“切换”的意思checkout还有一个撤销的作用。 举个例子假设我们在一个分支开发一个小功能刚写完一半这时候需求变了而且是大变化之前写的代码完全用不了好在你刚写甚至都没有 git add 进暂存区这个时候很简单的一个操作就直接把原文件还原 git checkout filename 参考在git中checkout历史版本 git log 查看版本演变历史 git log --prettyoneline # 检查提交日志都在一行commit id message git log --oneline # 与上面命令等价 查看某人的提交 git log --authormichael 一个常用的选项是-p用来显示每次提交的内容差异;可以加上-2或者-n2来仅显示最近两次提交git log -n2 # 查看最近的2次提交 git log -p -2 git log -n1 --formatformat:%h # 查看当前分支最新的 commit id 缩略值 列出最近两周内的提交 git log --since2.weeks 图形化查看分支演变 # 加了 --all 表示查看所有分支的历史否则只能看到当前分支的演变历史 git log --all --graph # 只查看指定分支的演变历史比如 temp 分支此时就不能使用参数 --all git log --oneline --graph temp git log命令全解析打log还能这么随心所欲git-scm 2.3 Git 基础 - 查看提交历史远程仓库的使用 查看远程仓库 git remote -v 如果想查看远程仓库更多的信息可以使用git remote show remote-name命令。 远程仓库的移除与重命名 git remote rename old-remote-name new-remote-name git remote rename pb paul 如果因为一些原因要移除一个远程仓库可以使用git remote rm remote-name。 添加一个新的远程 Git 仓库同时指定一个可以轻松引用的简写 git remote add remote_host_name url 这里的remote_host_name常常取名为origin。所以常见的origin其实是一个你 Git 仓库跟踪的远程仓库的简写。 拉取远端仓库有但你本地没有的信息 git fetch remote_host_name 如果你使用clone命令克隆了一个仓库命令会自动将其添加为远程仓库并默认以origin为缩写。 Tag 列出标签 git tag # 列出所有标签 git tag -l v1.8* # 列出以 v1.8 开头的所有标签 创建标签 Git使用两种主要类型的标签 附注annotated标签轻量ightweight标签前者会包括一些注释信息来进一步解释这个 tag 的作用而后者就仅仅只是一个 tag 的名字 附注标签 git tag -a v1.4 -m my version 1.4 通过git show tag-name命令可以看到标签信息 轻量标签 git tag v1.4 没用-a、-m的参数只需要提供标签名字 删除标签 git tag -d tagname 补打标签 假设忘记给项目打标签可以在之后加上 基于某历史节点的commit id补打Tag git tag -a v1.2 commit id 共享标签 默认情况下git push命令并不会传送标签到远程服务器上。在创建完标签后你必须显示地推送标签到共享服务器上。这个过程就像共享远程分支一样可以运行git push origin [tagname] 如果想要一次性推送很多标签也可以使用--tags选项的git push git push origin --tags 检出标签 git checkout -b new_br tag_name 参考 The Junior Git6 Git 基础 - 打标签最后 Git使用教程笔记Pro Git 中文Git常用命令备忘掘金-今年下半年中日合拍的《Git游记》即将正式开机我将...上集git术语解释stagingindexcachepcottle/learnGitBranching 分支演示网站转载于:https://www.cnblogs.com/michael-xiang/p/10465865.html
http://www.pierceye.com/news/215511/

相关文章:

  • 佛山新网站建设详细内容手机软件公司
  • 网站建设美词原创怎样建设一个能上传数据的网站
  • 网站建设网站营销做APP必须要有网站么
  • 易企建站咖啡公司网站建设策划书
  • wordpress 不能查看站点网站建设公司软件开
  • 网站文章seoftp搭建wordpress
  • 济宁企业做网站受欢迎的常州做网站
  • 我有域名有服务器怎么建设网站凡科官网app下载
  • 深圳保障性住房可以买卖吗襄樊seo排名
  • 餐饮官网建站模板网站开发实验报告可行性分析
  • 美食网站建设规划书外链工具软件
  • 网站设计模板代码七牛wordpress后台慢
  • 佛山网站建设怎么办huang色网站
  • 涞水县建设局网站wordpress wp_enqueue_script
  • 网站怎么添加音乐wordpress livechat
  • 网站开发的业务需求分析学校网站建设运行简介
  • 网站建设找博网iis7.0网站错误代码解决
  • 嘉鱼网站建设公司php网站开发技术期末题库
  • 企业网站搭建方案wordpress代码编辑器件
  • 网站的大小黄埔移动网站建设
  • 建设网站的语言中囯军事网
  • 网站开发职业访谈上海 建设工程质量监督站网站
  • 网站开发程序用什么好用新浪微博做网站
  • 什么免费推广网站好旅游订房网站开发需求文档
  • 网站运营是做啥的wordpress带会员中心主题
  • 网站设计怎么弄微信表情开放平台官网
  • 做网站纸张大小滨州网站建设模板建设
  • wordpress建站位置被跨境电商骗了怎么办
  • 巫山网站建设哇塞fm网站维护
  • 南宁百度网站推广计算机网站建设与推广