git功能小记

理解
跟踪定义:
初次克隆某个仓库的时候,工作目录中的所有文件都属于已跟踪文件,并处于未修改状态。
编辑过某些文件之后,由于自上次提交后你对它们做了修改,Git 将它们标记为已修改文件。

必须先将他们的工作拉取(pull)下来并将其合并进你的工作后才能推送

Git 保存的不是文件的变化或者差异,而是一系列不同时刻的文件快照。

当 git fetch 命令从服务器上抓取本地没有的数据时,它并不会修改工作目录中的内容。 它只会获取数据然后让你自己合并。

命令:
修改用户信息
$ git config --global user.name “John Doe”
$ git config --global user.email [email protected]

检查配置信息
$ git config --list
user.name=John Doe
[email protected]
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto

获取config命令的手册
git help config

克隆项目
git clone https://github.com/libgit2/libgit2

检查当前文件状态
$ git status
On branch master
nothing to commit, working directory clean

跟踪新文件(一般用不到)
$ git add README

忽略文件
$ cat .gitignore
*.[oa]
*~
创建一个名为 .gitignore 的文件,列出要忽略的文件模式。第一行告诉 Git 忽略所有以 .o 或 .a 结尾的文件。一般这类对象文件和存档文件都是编译过程中出现的。 第二行告诉 Git 忽略所有以波浪符(~)结尾的文件

查看已暂存和未暂存的修改(在sourceTree上用)
git diff

提交更新(在sourceTree上用)
git commit

重新提交(用不到)
$ git commit --amend
情况适用于提交完了才发现漏掉了几个文件没有添加,或者提交信息写错了。

撤消之前所做的修改
$ git checkout – CONTRIBUTING.md

查看远程仓库
git remote

从最初克隆的服务器上抓取数据并自动尝试合并到当前所在的分支。
git pull

推送到远程仓库
$ git push origin master

远程仓库的移除与重命名
$ git remote rename pb paul
$ git remote rm paul

如果希望和别人一起在名为 serverfix 的分支上工作
$ git push origin serverfix

合并提交
git rebase -i HEAD~3
改为
pick 3ca6ec3 ‘注释**********’

s 1b40566 ‘注释*********’

s 53f244a ‘注释**********’

切换分支
git checkout childy

把某个分支的内容合并到当前分支
git rebase master(假设当前在childy分支,合并后childy分支的内容就和master分支一样了)

猜你喜欢

转载自blog.csdn.net/chaogaoxiaojifantong/article/details/89208471