git 笔记 在现有项目目录中创建git 版本控制

1,先cd到项目目录下,如:cd /f/majiong   ,这样就进入了F盘下的 
   majiong 这个目录了

2,在这个目录下初始化仓库(创建仓库) 如:git  init

3,把目录下所有文件以及子目录下所以文件添加到仓库中,如; git add . 
  注意. 号后面有个空格,然后提交所以的文件 git commit -m "新的开始"

4,查看当前仓库状态,如:git status 

5,修改多个文件之后,git status 查看仓库状态已经改变,

6,比较修改前后差异,
如;git diff app/src/main/java/com/main/mahjong/a.java 
若改变的地方很多,按任意键可看后面的修改地方,按下q 键可退出

7,修改了多个文件,不想每次都git add a,java b,java 
  可以直接 git commit -am "修改了新的内容"
  可再次查看状态,如; git status

8,查看历史add,commit记录,如:git log 
  其中 commit cb926e7ea50ad11b8f9e909c05226233bf755030 
  commit 后面的是十六进制的commit id 也就是版本号,
  可以用来恢复到某个版本号

9,回退恢复到上一个版本,如 git reset --hard HEAD^
   恢复到上上个版本,如 git reset --hard HEAD^^ 以此类推
   恢复到某个版本号下 如 git reset --hard  cb926e7  
   版本号没必要写全,前几位就可以了,Git会自动去找。
   当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。

 10,查看每次的操作命令记录,如 git reflog 

 11,撤销没有添加到暂存区或提交后的修改,
    如 git checkout -- app/src/main/java/com/main/mahjong/a.java 
    其实就是检出之前提交的文件到工作副本中。
    注意,add ,commit 之后的是不能用这个命令撤销的,只能reset ,有点用处不大

 12, 删除文件 git rm app/src/main/java/com/main/mahjong/GameRoomActivity.java
          确实要删除,则git commit -m "删除文件GameRoomActivity.java "  这个时候会真正从版本库种删除
          误删或不想删除了。则 git checkout -- app/src/main/java/com/main/mahjong/GameRoomActivity.java 

 13,创建远程仓库需要的ssh key $ ssh-keygen -t rsa -C "9468802@qq.com"

 14,把本地文件关联到远程仓库,注意是自己的仓库也可以是别人的
     git remote add origin git@github.com:yijiliangfang/android-mahjong.git
     其中yijiliangfang/android-mahjong.git 是自己在远程仓库的帐户名和远程仓库的仓库名,
     其中origin  只是给远程仓库起的一个本地的名字,可以随便定义自己希望的名字。

 15,删除远程仓库名 git remote rm origin  

 16,把本地生成的ssh 公钥复制添加到github 帐户中,此处可以自己百度,就不截图说明了,在github 个人帐户的设置里面就能看到。

 17,更新远程文件到本地仓库:git pull origin master   
    如被拒绝合并可加参数 git pull origin master --allow-unrelated-histories
    提交本地文件到远程仓库,git push -u origin master(只能push 自己的仓库,如果要push 别人的仓库需要申请,通过后才可以)
    需要注意的就是push 推送之前先pull 拉一下服务器的数据,做一下同步,
    有可能在新建一个新的github库的时候选择了自动创建readme文件。这个时候push 的时候可能发生错误。
    另外:
    git pull origin dev 命令会执行 git fetch origin dev  和 git merge 2个命令,
    git fetch origin dev 命令会从远程库更新文件到本地的dev分支库,若本地没有dev 这个分支会被新建。

 18,建立一个名叫:dev的分支, 如,git branch 'dev'
    让HEAD 指向新建的dev, 如,git checkout 'dev'
    用一行命令完成上面2步:git checkout -b 'dev'

 19,查看分支列表,如,git branch ,如果是 git branch -a 会查看到本地和remote中远程的全部的分支

 20,切换回到原来的master 主分支。如,git checkout  'master'


 21,把在dev 分支中修改,增加的文件合并到master分支上,如,git merge dev
    之所以是dev合并到master 是因为通过上一步的切换,现在HEAD指向了master 分支,
    当前分支是master,所以是命令 git merge dev 是把dev合并到了master上。

 22,删除之前的dev分支(若需要) 如,git branch -d dev

 23,把dev 分支检出文件到某个文件夹下,git checkout dev /f/python/test  
     这样就会把dev 分支检出到f盘下的python/test 这个文件夹下。

 24.1,克隆(下载)别人的仓库到本地仓库,git clone git@github.com:willy2358/lxqenjoy
      相当于新建了本地git仓库和分支master,
      当然用 git remote add origin git@github.com:willy2358/lxqenjoy ,然后 git fecth origin master也可以

 24.2,把远程仓库dev 分支检出文件到某个文件夹下,$ git checkout origin/dev /f/python-test/TestSocket/lxqenjoy/ 
       这样就会把dev 分支检出到f盘下的python-test/TestSocket/lxqenjoy/ 这个文件夹下。
       注意:lxqenjoy 这个文件夹必须处于git的版本控制下,否则失败

GIT 并不能把分支A中a/aa/a1 文件夹中的所有文件或某个文件更新(检出)到工作副本中

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yijiliangfang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值