记录踩过的坑-Git

Git命令克隆很慢

原命令:git clone -b r1.13.0 https://github.com/tensorflow/models.git

现在替换为:git clone -b r1.13.0 https://github.com.cnpmjs.org/tensorflow/models.git

也就是把原 URL 中的 github.com 替换为 github.com.cnpmjs.org,其余保持不变。

Git Bash命令

1)、cd : 改变目录。

2)、cd . . 回退到上一个目录,直接cd进入默认目录

3)、pwd : 显示当前所在的目录路径。

4)、ls(ll): 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细。

5)、touch : 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件。

6)、rm: 删除一个文件, rm index.js 就会把index.js文件删除。

7)、mkdir: 新建一个目录,就是新建一个文件夹。

8)、rm -r : 删除一个文件夹, rm -r src 删除src目录, 好像不能用通配符。

9)、mv 移动文件, mv index.html src index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下。

10)、reset 重新初始化终端/清屏。

11)、clear 清屏。

12)、history 查看命令历史。

13)、help 帮助。

14)、exit 退出。

15)、#表示注释

git remote:查看远程库信息

git remote -v:远程库详细信息

git branch -r , git branch -a 查看远程分支

git push 将当前分支推送到远程对应的分支(若远程无对应分支,则推送无效)

git push origin dev 将分支dev提交到远程origin/dev(远程没有则创建, 远程没有dev则创建)

git branch –set-upstream branch-name origin/branch-name 建立本地分支和远程分支的关联

git checkout -b dev origin/dev 创建远程的origin/dev分支到本地

查看提交详情

git log --stat

查看提交记录

记录踩过的坑-Git_第1张图片

git show

查看最新的commit

记录踩过的坑-Git_第2张图片

git show commitId

查看指定commit hashID的所有修改

记录踩过的坑-Git_第3张图片

git show commitId fileName

查看某次commit中具体某个文件的修改

克隆指定版本

git clone --branch [tags标签] [git地址] 或者 git clone --b [tags标签] [git地址]

例子

git clone -b 1.4.1 https://github.com/jumpserver/coco.git

Git Merge

在git-merge命令中,有以下三种使用参数:

  • git merge [-n] [--stat] [--no-commit] [--squash] [--[no-]edit] [-s ] [-X ] [-S[]] [--[no-]rerere-autoupdate] [-m ] [...]

  • git merge HEAD ...

  • git merge --abort

git-merge命令是用于从指定的commit(s)合并到当前分支的操作。

注:这里的指定commit(s)是指从这些历史commit节点开始,一直到当前分开的时候。

git-merge命令有以下两种用途:

  1. 用于git-pull中,来整合另一代码仓库中的变化(即:git pull = git fetch + git merge)

  1. 用于从一个分支到另一个分支的合并

假设下面的历史节点存在,并且当前所在的分支为“master”:

记录踩过的坑-Git_第4张图片

编辑

那么git merge topic命令将会把在master分支上二者共同的节点(E节点)之后分离的节点(即topic分支的A B C节点)重现在master分支上,直到topic分支当前的commit节点(C节点),并位于master分支的顶部。并且沿着master分支和topic分支创建一个记录合并结果的新节点,该节点带有用户描述合并变化的信息。

即下图中的H节点,C节点和G节点都是H节点的父节点。

记录踩过的坑-Git_第5张图片

编辑

Author和Commiter

首先从单词上我们可以看出,author是作者的意思,而committer是提交者的意思。通过字面意思我们大致可以理解为:author是代码的编写者,而committer是代码的提交者。

作者是最初编写代码的人。另一方面,提交者被假定为代表原始作者提交代码的人。这在Git中很重要,因为Git允许您重写历史,或者代表其他人应用补丁。免费的在线Pro Git书这样解释:

您可能想知道作者和提交者之间有什么区别。作者是最初编写补丁的人,而提交者是最后应用补丁的人。所以,如果你向一个项目发送了一个补丁,而其中一个核心成员应用了这个补丁,那么你们两个都会得到信任——你是作者,核心成员是提交者。

你可能感兴趣的:(#,Git和GitHub,git)