git功能小记

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

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

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

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

命令:
修改用户信息
$ git config --global user.name “John Doe”
$ git config --global user.email johndoe@example.com

检查配置信息
$ git config --list
user.name=John Doe
user.email=johndoe@example.com
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

添加当前所有目录到暂存区
$ git add .

提交更新(在sourceTree上用)
git commit -m [message]

拉取远程分支的变化

git pull origin test

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

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

查看远程仓库
git remote

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

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

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

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

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

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

切换分支
git checkout childy

切换到某新的分支
git checkout -b test;

切换到某远程分支并添加分支名
git checkout -b test remotes/origin/test;

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

git merge dev

返回某一提交
git log(查看各个分支的提交)

然后输入命令
git reset --hard edc30e1bd5cbe6a578f2d04fa05ee8cd2f4c6b04
hard后面的字符串为commit的名字

强制推送命令
git push -f origin develop(最好改个readme某地方,再提交一次,保证推到最新分支,后面的人拉下来就没什么问题)

如果没有暂存文件就切换分支的话,切换前的分支和切换后的分支是一模一样的

忽略所有的暂存文件
git checkout .

解决服务器上因代码不同步造成无法拉取的问题
git reset --hard edc30e1bd5cbe6a578f2d04fa05ee8cd2f4c6b04git 回退到某个版本

修改readme.md文件某个地方,然后提交代码

git push -f origin develop 强制推送

git忽略文件
已暂存的文件再忽略不会生效

生成ssh密钥
cd ~/.ssh/

ssh-keygen -t rsa -C “你的公司或个人邮箱”

git忽略已经被跟踪的文件,此时gitignore已经失效了
git rm -r --cached .
git add .
git commit -m ‘update .gitignore’

忽略文件写法

**/target/** 忽略包含target目录的所有文件

git查看本地与远程分支

git branch -a

git删除某本地分支
先切换到其他分支再删除

git删除用户信息

git取消暂存的文件
git reset head [文件名]

删除错误的保存密码

git config --system --unset credential.helper

取消每次都要输入密码的功能

git config --global credential.helper store

git删除远程分支

git push origin --delete Chapater6

git 下载文件超时

git config --global http.postBuffer 524288000
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999

svn部署使用

https://www.cnblogs.com/jingmoxukong/p/10335174.html

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值