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

天津品牌网站建设是什么专业做外贸的网站

天津品牌网站建设是什么,专业做外贸的网站,几年前我为客户建设网站,南京网站设计优化公司文章目录 练习一练习二练习三练习四练习五练习六练习七 练习一 若还没有 Git 的相关经验,阅读 Pro Git 的前几章或诸如 Learn Git Branching 的相关教程,并在学习的同时从 Git 的数据模型(data model)的角度思考各 Git 命令。 老师…

文章目录

      • 练习一
      • 练习二
      • 练习三
      • 练习四
      • 练习五
      • 练习六
      • 练习七

练习一

若还没有 Git 的相关经验,阅读 Pro Git 的前几章或诸如 Learn Git Branching 的相关教程,并在学习的同时从 Git 的数据模型(data model)的角度思考各 Git 命令。

老师非常建议阅读 Pro Git。

练习二

clone 该课程(Missing Semester)网站的仓库,随后:

  1. 以图的形式展现其版本历史
  2. 运用 git log 加一个参数,找到修改 README.md 的最后一人
  3. 运用 git blamegit show 得到 _config.ymlcollections: 这一行最后一次修改的 commit 信息

第 1、3 小题在 lecture 中演示过,而第 2 小题据提示比较简单。

  1. git clone <URL> <folder>*(必备基础技能)*克隆课程仓库:

    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise$ git clone https://github.com/missing-semester/missing-semester missing-semester
    Cloning into 'missing-semester'...
    remote: Enumerating objects: 2344, done.
    remote: Counting objects: 100% (1487/1487), done.
    remote: Compressing objects: 100% (543/543), done.
    remote: Total 2344 (delta 980), reused 964 (delta 941), pack-reused 857
    Receiving objects: 100% (2344/2344), 15.61 MiB | 1.28 MiB/s, done.
    Resolving deltas: 100% (1392/1392), done.
    
  2. 不妨运用 Topic 5 所讲解的*别名 (alias)*知识,简化 git log 的相关图示法命令:

    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/test/demo$ alias gl='git log --all --graph --decorate'
    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/test/demo$ alias gl1='gl --oneline'
    

    **提示:**可以在配置文件 ~/.bashrc 中设定默认的 alias当然,本练习做到后面(练习五)发现可以直接修改 Git 的配置文件 .gitconfig

    • gl:包含详细 commit 的信息

      cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/missing-semester$ gl > gl_res.log
      cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/missing-semester$ vim gl_res.log
      

      结果极长,共 4218 行。

    • gl1:缩略信息,每个 commit 仅一行

      *   d38f585 (HEAD -> master, origin/master, origin/HEAD) Merge branch 'alexandr-gnrk/update-jupyter-binding'
      |\
      | * f600f32 Update Vim binding for Jupyter
      |/
      * 2253e4e Switch recommended app to Rectangle
      * 18ee93c Ignore Reddit URLs when checking links
      *   2ab1b78 Merge branch 'alkock/master'
      |\
      | * 98d90f8 added german translation
      |/
      * bd75a78 Fix broken links
      *   7330a25 Merge branch 'fipachu/git-aliases'
      |\
      | * 6fc734b Add more useful overview of Git aliases
      |/
      *   f45234f Merge branch 'Nikitaz1410/patch-2'
      ...
      

      部分较新的历史如上,共 885 行。

    提示:当 git log 等其它 git 命令的信息较长时会显示前一部分信息并自动进入某种 “交互” 模式,上下移动方法同 Vim,H 键显示帮助,Q 键退出。

  3. 考虑使用 Topic 2 提及的 tldr 工具查询所需用法:

    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/missing-semester$ tldr git log...Show a history of commits.More information: https://git-scm.com/docs/git-log....- Show the history of a particular file or directory, including differences:git log -p path/to/file_or_directory...
    

    由此得知 git log -p + 文件/文件夹

    后来发现不应该如上加上 -p flag,其会显示所有 “differences”,直接加文件即可:

    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/missing-semester$ git log README.md
    commit 9ef9db72211fefc00caaa7133b35dda4a99acccf
    Author: Anish Athalye <me@anishathalye.com>
    Date:   Thu Oct 27 20:28:41 2022 -0400Add Docker setup for easier development
    ...
    

    因此显然是授课老师 Anish Athalye 最后修改了 README.md

  4. lecture 中演示了。先 git blame + 文件并找到目标信息对应的 commit,随后 git show <commit> 得到其相关信息:

    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/missing-semester$ git blame _config.yml
    ...
    a88b4eac (Anish Athalye 2020-01-17 15:26:30 -0500 18) collections:
    a88b4eac (Anish Athalye 2020-01-17 15:26:30 -0500 19)   '2019':
    ...
    

    ⇒ \Rightarrow commit 哈希值为 a88b4eac

    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/missing-semester$ git show a88b
    commit a88b4eac326483e29bdac5ee0a39b180948ae7fc
    Author: Anish Athalye <me@anishathalye.com>
    Date:   Fri Jan 17 15:26:30 2020 -0500Redo lectures as a collection
    ...
    

    所以对应 commit 的信息为 “Redo lectures as a collection”

练习三

为应对误将不应被 Git 管理的内容,如某大文件或敏感信息,commit 的情况,学习 Github 上的官方文档,随后模拟上述情形下删除目标文件。

学习文章知,可以使用两种工具(均需安装):

  • git filter-repo
  • BFG Repo-Cleaner(更方便高效)

根据相关说明操作即可。

练习四

修改某仓库中的文件,随后依次 git stashgit log --all --onelinegit stash pop 巩固 git stash 的技能,并思考其可能适用于在何种情况。

stash vt. 藏匿; 隐藏; 存放; 贮藏(百度翻译)

lecture 中也演示过 git stash,其可 “隐藏” 所做的修改,并以 git stash pop 恢复。

  1. 修改 README.md 之后 git stash

    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/test_git_stash$ echo '**REMOVED**' > README.md
    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/test_git_stash$ git status
    On branch master
    Your branch is up to date with 'origin/master'.Changes not staged for commit:(use "git add <file>..." to update what will be committed)(use "git restore <file>..." to discard changes in working directory)modified:   README.mdno changes added to commit (use "git add" and/or "git commit -a")
    
  2. git log

    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/test_git_stash$ git log --all --oneline
    7fca419 (refs/stash) WIP on master: d38f585 Merge branch 'alexandr-gnrk/update-jupyter-binding'
    088c991 index on master: d38f585 Merge branch 'alexandr-gnrk/update-jupyter-binding'
    d38f585 (HEAD -> master, origin/master, origin/HEAD) Merge branch 'alexandr-gnrk/update-jupyter-binding'`
    ...
    

    可以发现在 HEAD commit 之上多了两条 commit!且最后一条为 refs/stash

  3. git stash pop 恢复:

    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/test_git_stash$ git stash pop
    On branch master
    Your branch is up to date with 'origin/master'.Changes not staged for commit:(use "git add <file>..." to update what will be committed)(use "git restore <file>..." to discard changes in working directory)modified:   README.mdno changes added to commit (use "git add" and/or "git commit -a")
    Dropped refs/stash@{0} (7fca419c92d8bff936036a4ca32b277d11c1849a)
    cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/test_git_stash$ git log --all --oneline | head -10
    d38f585 Merge branch 'alexandr-gnrk/update-jupyter-binding'
    ...
    

    直接跳出了 README.md 被更新的提示,且此时 git log 已无之前新增的 commit 记录。

    (说明:上面的 head 命令能得到输入文件的开头若干行,可见 Missing Semester - Topic 1 中关于类似的 tail 命令的讲解)

git stash 应该在修改文件后又想看其之前的内容时非常有用。若无 git stash,恐怕只能先将文件存在别处,随后 git checkout -- <file> 丢弃修改。

练习五

在 Git 的配置文件 ~/.gitconfig 中创建 alias,以便使用 git graph 便能得到 git log --all --graph --decorate --oneline 的结果。根据 https://git-scm.com/book/en/v2/Git-Basics-Git-Aliases 用命令行创建 alias 亦可。

.gitconfig 文件中加入:

[alias]graph = log --all --graph --decorate --oneline

测试如下:

cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/missing-semester$ diff <(git graph) <(git log --all --graph --decorate --oneline)
cowbby@LAPTOP-UD6KDALFP:~/Missing Semester/6_Version Control(git)/exercise/missing-semester$

可见两者输出完全一样。

练习六

You can define global ignore patterns in ~/.gitignore_global after running git config --global core.excludesfile ~/.gitignore_global. Do this, and set up your global gitignore file to ignore OS-specific or editor-specific temporary files, like .DS_Store.

练习七

Fork the repository for the class website, find a typo or some other improvement you can make, and submit a pull request on GitHub (you may want to look at this). Please only submit PRs that are useful (don’t spam us, please!). If you can’t find an improvement to make, you can skip this exercise.

http://www.yayakq.cn/news/902034/

相关文章:

  • php教育视频网站开发绵阳高新区建设局网站
  • 蚌埠公司做网站大型网站需要什么样的团队
  • 自己做彩票网站犯法吗附近最近的广告公司
  • 做资金盘 互助盘的网站wordpress建站版本推荐
  • 织梦企业网站管理系统装饰公司名字起名大全
  • 网站本科报考官网wordpress访问密码
  • 手机网站dedecms东营建设信息网中标公示
  • 网站制作公司属于广告发布者吗有网站可以接设计的单子做吗
  • 宜兴市住房和城乡建设局网站wordpress 会员登录
  • 设计网站大全免费下载什么是行业网站?
  • 手机上可以创建网站吗wordpress设置伪静态
  • 静态网站开发语言2017网站风格
  • 牡丹菏泽网站建设个人网站模板 免费
  • 邹平做网站公司源码时代培训机构官网
  • 推荐邵阳网站建设如何开网站做代销
  • 做网站联系做网站建设电话销售
  • wordpress 科技企业seo计费系统
  • 做外汇看的国外网站南宁网站开发培训学校
  • 网站建设管理措施自建网站备案通过后怎么做
  • 信阳市两学一做网站免费咨询网络欺诈
  • 食材网站模板网页界面设计欣赏
  • 建设租房信息网站苏州哪个公司做门户网站
  • 老域名优化网站的步骤
  • 钓鱼网站开发教程wordpress同步豆瓣
  • 北京高档网站建设个人网站前置审批项
  • 个人网站名称备案网站集群建设参数
  • 如何诊断网站seo百度移动版
  • iis7站长工具梅州建站怎么做
  • 旅游网站规划说明连云港关键字优化预订
  • 建设工程项目管理信息门户网站网站栏目建设存在的问题