ubuntu下安装git安装及使用

一、当前git已经成成为代码管理最受欢迎的工具之一,下面简单说一下其使用。之前写过一篇关于git关联github的,可以查看http://fuzhenwen.top:8000/article/22/preview 。

   一般项目开发者,首先得把项目fork到自己的profile中,一般人没有前线直接向origin直接提交代码,只能向自己的profile提交,确定要找到对应的dev分支,然后pull request,把链接发给merge代码的人。

二、安装
        1.在控制窗口输入,开始安装。

fuge@fuge2008:~$ sudo apk-get install git


        2.输入自己的github邮箱,进行关联。

  fuge@fuge2008:~$ git config --global user.email "[email protected]"


        3.查看关联是否成功(成功结果如下:)

 fuge@fuge2008:~$ git config --list

  user.name=Fuge2008
  [email protected]


        4.生成公私钥,生成文件是控制是否能提交代码的身份依据,请妥善保管,如果之前有的话,会提示是否覆盖,请留意。(下面是成功的结果)。

 fuge@fuge2008:~/workspace$ ssh-keygen -trsa -C "[email protected]"

        Generating public/private rsa key pair.
        Enter file in which to save the key (/home/fuge/.ssh/id_rsa):
        Enter passphrase (empty for no passphrase):
        Enter same passphrase again:
        Your identification has been saved in /home/fuge/.ssh/id_rsa.
        Your public key has been saved in /home/fuge/.ssh/id_rsa.pub.
        The key fingerprint is:
        SHA256:YyZa/ayb6ge1zfXXXXXXXXWtMtNdm4tzyqgvZc9GjSiSE [email protected]
        The key's randomart image is:
        +---[RSA 2048]----+
        |                 |
        |      oES==.o o .|
        |     o.*o%B.+....|
        |    .  .*o+B . + |
        |       oo+=.  . .|
        |     .+o=+.oo.   |
        +----[SHA256]-----+


        5.下面是即可查看到公钥的内容,把ssh-rsa后面的部分复制到github的Setting->SSH keys->New SSH Key,创建一个key,保存即可。(下面是查看id_rsa.pub的方法)

 fuge@fuge2008:~$ cd .ssh
        fuge@fuge2008:~/.ssh$ ls
        d_rsa  id_rsa.pub  known_hosts
        fuge@fuge2008:~/.ssh$ cat id_rsa.pub
        ssh-rsa  B3NzaC1yc2EAAAAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXtD [email protected]


      
     三、常用操作命令
        #克隆项目

 fzw@onyx:~/mnt/workspace/$ git clone [email protected]:fuzhenwen3/onyx.git

         #查看看git状态

 fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git st

#查看指定文件的git操作日志

fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git log -p android/kreader/app/common/OnyxPinyinIME/

#查看git分支

  fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git br

    #查看git所有分支

 fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git br -a

   #查看当前父子仓库

 fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$git sub

#查看当前分支的全部子模块

fzw@onyx:~/mnt/workspace/3128_android_rom$ git submodule foreach git br

#切换到origin

fzw@onyx:~/mnt/workspace/3128_android_rom$ git remote add origin [email protected]:onyx-intl/3128_android_rom.git

#来取更新当前分支的子模块

fzw@onyx:~/mnt/workspace/3128_android_rom$ git submodule foreach git pull

#来取更新

fzw@onyx:~/mnt/workspace/3128_android_rom$ git submodule update 

#开始同步
 

fzw@onyx:~/mnt/workspace/3128_android_rom$ git submodule sync

#取消dev分支的左右修改

fzw@onyx:~/mnt/workspace/3128_android_rom$ git submodule foreach git co dev

 

        #git提交记录
       

 fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git log

        #git变化情况对比
      

  fzw@onyx:~/mnt/workspace/3128_android_rom$ git git diff

        #git某个文件变化情况对比
  

fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git diff android/kreader/app/common/OnyxPinyinIME/src/main/java/com/onyx/pinyinime/SoftKeyboardView.java

        #展示某条记录详情,show后面的是在diff中查到的id号
     

   fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git show 87d65dd8e724a84fba05bede6d79016856fe7e2a

        #查看代码情况,如果分支不对的话不对的话,需要add一下新的路径
       

 fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git remote -v

     #要添加一个新的远程仓库,可以指定一个简单的名字(mine),以便将来引用,运行 git remote add [shortname] [url]:

    

 fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$git remote add mine git://github.com/paulboone/ticgit.git

#此时用git remote -v查看分支的话会出现新加进去的分支,如下
   

 origin git://github.com/schacon/ticgit.git

 mine git://github.com/paulboone/ticgit.git

#切换分支,由orgin切换到mine

fzw@onyx:~/workspace/3128_android_rom$git fetch origin mine:mine

        #将改动后的代码add进去
  

fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git add android/kreader/app/common/OnyxPinyinIME/src/main/java/com/onyx/pinyinime/SoftKeyboardView.java

#将单个文件add进去

fzw@onyx:~/mnt/workspace/3128_android_rom/frameworks$ git add base/packages/DocumentsUI/res/layout/fragment_directory.xml

#git co . # 指定取消某些文件的改动

fzw@onyx:~/mnt/workspace/3128_android_rom/frameworks$ git co base/packages/DocumentsUI/res/values-sw720dp/styles.xml base/packages/DocumentsUI/res/values/styles.xml base/packages/SettingsProvider/res/values/defaults.xml

        #commit代码
       

 fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git commit -m "Screen adaptation to the keyboard"

        #如果自己的是fork过来的分支,那push前要记得先向母项目pull,更新项目后再push
      

   fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git pull origin dev

        #push代码
        

fzw@onyx:~/mnt/workspace/3128_android_rom/kepler$ git push mine dev


        
 

 

你可能感兴趣的:(git,Android,git,ubuntu)