做网站销售说辞/温州seo优化公司

本文为自学Git总结,内容还在不断完善中,若有错误请您及时指出
^ ^
1 Git安装
在 Mac 上安装 Git 有多种方式。 最简单的方法是安装 Xcode Command Line Tools。 Mavericks (10.9) 或更高版本的系统中,在 Terminal 里尝试首次运行git命令即可。
git --version
如果没有安装过命令行开发者工具,将会提示你安装。
2 准备工作
- 解决Github访问速度慢
在Linux/OSX系统的/etc/hosts文件中添加以下两行
140.82.114.4 github.com
199.232.5.194 github.global.ssl.fastly.net
- 配置用户信息(此操作可在任意目录下完成)
"your name"
git config --global user.email
--global表示本机所有git仓库都使用此配置
- 查看当前全部git配置信息
git config --list
- 创建SSH key
"my@email.com"
- 然后运行以下命令,将公钥信息保存到github自己账号(Settings->SSH and GPG keys->new ssh key)中
cat ~/.ssh/id_rsa.pub
3 Git本地使用
- Git初始化
进入某一个仓库(repository)文件夹(例如my_rep),然后执行以下命令,创建一个空的Git仓库或重新初始化一个现有仓库
cd my_rep
git init
此时my_rep文件夹下会出现一个.git隐藏文件夹,存放本git仓库相关文件
- 追踪新文件(git add)
假设新修改了一个名叫a.txt的文件,使用git add [filename]将文件添加至git index区
git add a.txt
- 撤销上次add的操作
方法1
第1步 (将本地库里将HEAD版本给恢复到index区)
git reset HEAD a.txt
第2步,清理工作区(从index区拉取文件,覆盖Workspace文件)
git checkout -- a.txt
方法2
用HEAD指向的master分支中的a.txt文件替换index区和workspace区的文件(危险操作)
git checkout HEAD a.txt
此时,工作区的a.txt文件状态已恢复到上次commit后的状态
- 提交本次修改(git commit)
"一次新的git提交"
- 查看本地git库状态
git status
- 回滚上次的commit的操作
step1: 查看git日志,找到需要回滚的的commit id
git log
step2: 开始回滚(将本地仓库和暂存区文件都回滚到某一次commit)
[COMMIT_ID
- 清除本地a.txt文件
step1 在workspace中删除文件(删除暂存区或分支上的文件,加--cache则保留workspace的该文件)
git rm a.txt
step2 提交
"delete a.txt"
- 配置.gitignore文件
指定一些特定文件不被git库检索,例如,不让git库跟踪任何.pyc文件的变化,在.gitignore文件中
vim .gitignore
添加一行
*.pyc
再运行git status则显示不再跟踪代码库内任何pyc文件
创建分支
4 远程仓库相关操作
- 添加一个名为origin的远程库,与本地库关联
git remote add origin git@github.com:yourName/yourRepo.git
- 修改远程库的名称
查看所有远程仓库
git remote
查看指定远程仓库地址
git remote xxx
直接修改远程库链接
[新.git远程库链接地址
先删除,再添加远程库链接
[新.git远程库链接地址
- 撤销上一次commit
#HEAD~1表示上个commit版本,HEAD~2表示上上个版本
5 本地仓库->Github
推送本地库文件至远程库
git push -u origin master
6 Github->本地仓库
将远程库代码拉回至本地(通常在本地、远程两个库分别建立,而一开始没使用clone方式时,即使设置remote add origin xxx.git后,两个库一开始也会被认为相互之间不相关,需要加--allow-unrelated-histories参数,参考资料)
git pull origin master [--allow-unrelated-histories]
7 标签管理
- 查看所有标签
git tag
- 创建标签
git tag tag_name
- 指定提交标签的信息
"comment"
- 删除标签
git tag -d tag_name
- 标签发布
git push origin tag_name
8 分支管理
- 创建新分支
git branch feature_1
- 查看当前所有分支
git branch
- 切换分支
git checkout feature_1
- 合并分支
git checkout master
git merge feature_1
- 删除之前开的分支
git branch -d feature_1
9 冲突解决//TODO
10 常见错误列表
- 'master (push declined due to email privacy restrictions'
推荐解决办法:
打开 GitHub,在 settting -> Email -> keep my Email private 选项下的找到匿名 Email; 格式是:id+username@users.noreply.github.com
重新设置git用户 Email
"GitHub里查到的自己的匿名Email"
重置上次提交的作者信息
git commit --amend --reset-author
重新提交,完毕
git push -u origin master