git的使用

新手学习中

1.首先安装git工具

http://msysgit.github.com/下载安装包,完成安装之后,就可以使用命令行的 git 工具(已经自带了 ssh 客户端)了,另外还有一个图形界面的 Git 项目管理工具。

2.在github、码云等代码仓库网站上注册一个帐号

3.初次配置

Git 自带一个 git config 的工具来帮助设置控制 Git 外观和行为的配置变量。 这些变量存储在三个不同的位置:

  1. /etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置。 如果使用带有 --system 选项的 git config 时,它会从此文件读写配置变量。

  2. ~/.gitconfig 或 ~/.config/git/config 文件:只针对当前用户。 可以传递 --global 选项让 Git 读写此文件。

  3. 当前使用仓库的 Git 目录中的 config 文件(就是 .git/config):针对该仓库。每一个级别覆盖上一级别的配置,所以 .git/config 的配置变量会覆盖 /etc/gitconfig 中的配置变量。

在 Windows 系统中,Git 会查找 $HOME 目录下(一般情况下是 C:\Users\$USER)的 .gitconfig 文件。 Git 同样也会寻找 /etc/gitconfig 文件,但只限于 MSys 的根目录下,即安装 Git 时所选的目标位置。

当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址。 这样做很重要,因为每一个 Git 的提交都会使用这些信息,并且它会写入到你的每一次提交中,不可更改:

$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com

4.添加SSH KEY

  • 打开git bash,使用命令来生成ssh公钥和私钥对

在命令行输入:

ssh-keygen -t rsa -C 'xxx@xxx.com'

 然后一路回车(-C 参数是你的邮箱地址)

  • 然后打开~/.ssh/id_rsa.pub文件(~表示用户目录,windows就是C:\Users\Administrator),复制其中的内容
  • 打开gitlab,找到Profile Settings-->SSH Keys--->Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框,在Title对应的文本框中给这个sshkey设置一个名字(名字可以根据喜好设置),点击Add key按钮

这样就可以完成ssh key的添加和配置,然后进行pull和push就不需要输入密码

添加多个SSH KEY

有时我们需要在一台电脑上添加多个仓库的git信息,那就需要添加多个ssh key,具体方法如下:

  • 第一步还是用命令行生成密钥
ssh-keygen -t rsa -C 'yourEmail@xx.com' -f ~/.ssh/gitlab-rsa

一路回车

ssh-keygen -t rsa -C 'yourEmail2@xx.com' -f ~/.ssh/github-rsa

一路回车

  • 在~/.ssh目录下新建名称为config的文件(无后缀名)。用于配置多个不同的host使用不同的ssh key,内容如下:
# gitlab
Host gitlab.com
    HostName gitlab.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/gitlab_id-rsa
# github
Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github_id-rsa
  ​
# 配置文件参数
# Host : Host可以看作是一个你要识别的模式,对识别的模式,进行配置对应的的主机名和ssh文件
# HostName : 要登录主机的主机名
# User : 登录名
# IdentityFile : 指明上面User对应的identityFile路径
  • 按照上面的步骤分别往gitlab和github上添加生成的公钥gitlab_id-rsa.pub和github_id-rsa.pub方法与添加一个的时候相同
  • 添加和配置完成。可以查看~/.ssh目录下会有gitlab_id-rsa、gitlab_id-rsa.pub和github_id-rsa、github_id-rsa.pub四个文件

5.常用命令

从GitHub上clone代码到本地:

$ git clone git@github.com:yejingwei/bookkeeping.git

代码更新:

$ git pull

代码提交:

#添加到索引库
$ git add 完整文件路径

#提交到本地版本库
$ git commit -m "注释说明"

#推送到远程仓库
$ git push  

关于提交可以参考:

git add :https://blog.youkuaiyun.com/hudashi/article/details/7664374

git commit: https://www.cnblogs.com/qianqiannian/p/6005628.html

查看本地已改动代码:

$ git status

查看改动的地方

$ git diff

查看所有提交历史:

$ git log

查看某个特定文件的改动历史

$ git log -p <file>

查看谁在什么时候改动的历史

$ git blame <file>

列出所有存在的branch(分支)

$ git branch -av

switch到head(最新的)branch

$ git checkout <branch>

以当前head为基础,创建一个新的branch

$ git branch <new-branch>

删除一个本地branch

$ git branch -d <branch>

列出当前所有已配置的远程连接

$ git remote -v

展示一个远程连接的信息

$ git remote show <remote>

添加新的名为<remote>的远程仓库

$ git remote add <shortname> <url>

从远程下载所有改动,但不合入当前最新版本

$ git fetch <remote>

从远程下载所有改动,且合入当前最新版本

$ git pull <remote> <branch>

推送本地提交的改动到远程仓库

$ git push <remote> <branch>

在远程上删除一个分支

$ git branch -dr <remote/branch>

把分支合入你当前最新的版本

$ git merge <branch>

从工作区回退所有本地修改

$ git reset --hard HEAD

回退本地某个文件的修改

$ git checkout HEAD <file>

学习中,后续更新~

基于模拟退火的计算器 在线运行 访问run.bcjh.xyz。 先展示下效果 https://pan.quark.cn/s/cc95c98c3760 参见此仓库。 使用方法(本地安装包) 前往Releases · hjenryin/BCJH-Metropolis下载最新 ,解压后输入游戏内校验码即可使用。 配置厨具 已在2.0.0弃用。 直接使用白菜菊花代码,保留高级厨具,新手池厨具可变。 更改迭代次数 如有需要,可以更改 中39行的数字来设置迭代次数。 本地编译 如果在windows平台,需要使用MSBuild编译,并将 改为ANSI编码。 如有条件,强烈建议这种本地运行(运行可加速、可多次重复)。 在 下运行 ,是游戏中的白菜菊花校验码。 编译、运行: - 在根目录新建 文件夹并 至build - - 使用 (linux) 或 (windows) 运行。 最后在命令行就可以得到输出结果了! (注意顺序)(得到厨师-技法,表示对应新手池厨具) 注:linux下不支持多任务选择 云端编译已在2.0.0弃用。 局限性 已知的问题: - 无法得到最优解! 只能得到一个比较好的解,有助于开阔思路。 - 无法选择菜品数量(默认拉满)。 可能有一定门槛。 (这可能有助于防止这类辅助工具的滥用导致分数膨胀? )(你问我为什么不用其他语言写? python一个晚上就写好了,结果因为有涉及json读写很多类型没法推断,jit用不了,算这个太慢了,所以就用c++写了) 工作原理 采用两层模拟退火来最大化总能量。 第一层为三个厨师,其能量用第二层模拟退火来估计。 也就是说,这套方法理论上也能算厨神(只要能够在非常快的时间内,算出一个厨神面板的得分),但是加上厨神的食材限制工作量有点大……以后再说吧。 (...
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值