2013年,淘宝前端团队开始全面采用 Git 来做项目管理,我也是那个时候开始接触和使用,从一开始的零接触到现在的重度依赖,真是感叹 Git 的强大。
总结:
- 报401,没有权限;
常用操作
所谓实用主义,就是掌握了以下知识就可以玩转 Git,轻松应对 90% 以上的需求。以下是实用主义型的 Git 命令列表,先大致看一下:
git push
push到服务器
本地搭建了一个github私服,模拟GitHub http://192.168.142.135:3000/my/test.git
$ git push origin master
$ git push origin
# 指定推送到的远程主机和分支
# 指定当前分支推送到的主机和对应分支
$ git push -u origin master # 指定远程默认主机和分支
$ git push
# simple方式,默认只推送当前分支到默认关联的远程仓库
$ git push -u origin master
Password:
Counting objects: 7, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (7/7), 583 bytes, done.
Total 7 (delta 0), reused 0 (delta 0)
To http://my@192.168.142.135:3000/my/test.git
* [new branch]
master -> master
Branch master set up to track remote branch master from origin.
git config
配置本地用户名和邮箱
这是个好习惯,建议这时候一定要加上
$ git config --global user.name "my"
$ git config --global user.email "my@magedu.com"
# 这些内容对应~/.gitconfig文件,是 用户级别 的配置文件
$ cat ~/.gitconfig
[user]
name = my
email = my@magedu.com
# 命令显示
$ git config --global user.name
$ git config --global user.email
关联远程版本库
git remote 列出所有远程仓库
git remote -v 详细列出所有远程仓库
git remote add [shortname] [url] 指定一个名称指向远程仓库
远程版本库名origin,这是个习惯用法,将建立origin和后面url的映射,这些信息保存在.git/config文件的新的段
[remote "origin"] 中。
注意: http://my@192.168.142.135:3000/my/test.git 加上用户名,否则push会报401
git config --system 在 /etc/gitconfig 文件中读写配置
git config --global 在 ~/.gitconfig 文件中读写配置
.git/config 这个文件是 版本库级别 设置文件,这里的设置具有最高优先级
git pull
将服务器上的最新代码拉取到本地。
git pull origin daily/0.0.1
git clone
从 Git 服务器拉取代码。
建议使用Git的windows客户端的 git bash ,它含有常用ssh命令
配置本地用户名、邮箱
$ git config --global user.name "wayne"
$ git config --global user.email "wayne@magedu.com"
$ cat ~/.gitconfig
[user]
name = wayne
email = wayne@magedu.com
删除windows当前用户.ssh文件夹
ssh-keygen -t rsa -C "wayne@magedu.com"
-t 加密算法类型
-C comment 描述信息
$ ssh-keygen -t rsa -C "wayne@magedu.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Administrator/.ssh/id_rsa): # 直接回车
打开gogs的用户设置 -> SSH密钥
打开公钥文件~/.ssh/id_rsa.pub,将内容贴入“密钥内容”框中,点击“增加密钥”
SSH连接远程库
在windows上找一个空目录,执行下面的克隆命令。
注意,第一次使用ssh连接有提示,敲入yes。
$ git clone git@192.168.142.135:my/test.git
# git clone https://github.com/gafish/gafish.github.com.git
Cloning into 'test'...
remote: Counting objects: 28, done.
网友评论