git使用指南

创建新的仓库并 push 到远程仓库

echo "# t" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:kuhufu/项目名.git
git push -u origin master

push 一个已经存在的仓库到远程仓库

git remote add origin git@github.com:kuhufu/项目名.git
git push -u origin master

操作远程仓库

  • 显示当前绑定的远程仓库
    git remote -v

  • 添加绑定的远程仓库
    git remote add <name> <url>

  • 解除绑定的远程仓库
    git remote remove <name>

  • 重命名远程仓库
    git remote rename <oldname> <newname>

生成SSH Key

执行以下命令生成key

$ ssh-keygen -t rsa -C "youremail@example.com"

后面的 your_email@youremail.com 改为你在 github 上注册的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。成功的话会在~/下生成.ssh文件夹,进去,打开 id_rsa.pub,复制里面的 key。然后回到 github 添加SSH keys

ssh -T git@github.com测试一下
这样提示表示成功了
Hi kuhufu! You've successfully authenticated, but GitHub does not provide shell access.

需要注意的是输入密码后每次push都会要求输入此密码,为了方便可以不用密码

远程仓库与本地仓库同步

在远程已经有更新时,我们push到远程的时候,必须先把远程的改动拉到本地合并起来,才能再次提交我们的修改。所以当远程仓库已经有更更新时,我们push会有错误。

  1. 从远程 origin 仓库的 master 主分支更新最新的版本到本地master分支上
    git fetch origin master

  2. 比对下当前 本地master 分支和 origin/master 分支的区别
    git log -p master..origin/master

  3. origin/master 分支上的内容合并到 本地master 分支
    git merge origin/master

然后我们才能 push 。
更简便的方法:git pull origin master一键完成上述步骤

移除文件

使用 rm 命令即可,有两种选择.

  1. git rm --cached "文件路径",不删除物理文件,仅将该文件从缓存中删除;
  2. git rm --f "文件路径",不仅将该文件从缓存中删除,还会将物理文件删除(不会回收到垃圾桶)

假如你有文件不小心 commit 到了服务器那么你想要删除它,可以使用:

git rm -- cached "文件路径" 
git commit -m "delete file" 
git push

问题

每一次使用git push命令都需要重新输入一次用户名和密码,这是一个很烦人的小问题。Google之,找到了解决办法。
解决办法
在git bash中输入:
git config --global credential.helper store

下一次你再在你的项目中使用
git push

命令的时候,你的登录凭据将会被记住,这样就不用每次push都重新输入一次用户名和密码了。

还有一种情况是你的origin是
项目的https地址

$ git remote -v
origin  https://github.com/kuhufu/nsqgo (fetch)
origin  https://github.com/kuhufu/nsqgo (push)

而不是使用ssh的地址

$ git remote -v
origin  git@github.com:kuhufu/nsqgo.git (fetch)
origin  git@github.com:kuhufu/nsqgo.git (push)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • [TOC] Git @(24.1 Git)[git] 工作原理 直接记录快照,而非差异比较Git 只关心文件数据的...
    浮x尘阅读 439评论 0 0
  • 1.设置 初次使用需要设置姓名和邮箱git config --global user.name "git用户名"g...
    jrg陈咪咪sunny阅读 768评论 0 1
  • 1.git的安装 1.1 在Windows上安装Git msysgit是Windows版的Git,从https:/...
    落魂灬阅读 12,695评论 4 54
  • 今天讲经济学的另一个重要概念:需求弹性。还是像以往一样,我翻译的时候不会全按照原文,而是会添加一些帮助大家理解经济...
    果大喵喵阅读 374评论 0 0
  • 未来要么有为,要么无为,不要让自己后悔,时间不会重来。
    正能量L7阅读 88评论 0 0