Herramientas de usuario

Herramientas del sitio


wiki2:gitconcepts

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
wiki2:gitconcepts [2018/11/07 10:24]
alfred [Tips]
wiki2:gitconcepts [2021/10/01 16:19] (actual)
Línea 178: Línea 178:
 ===== Subtrees ===== ===== Subtrees =====
  
 +Subtrees are an alternative to submodules.
 +
 +==== Links ====
 +
 +https://​medium.com/​@porteneuve/​mastering-git-subtrees-943d29a798ec
 +
 +https://​www.atlassian.com/​blog/​git/​alternatives-to-git-submodule-git-subtree
 +
 +https://​developer.atlassian.com/​blog/​2015/​05/​the-power-of-git-subtree/​
 +
 +https://​www.youtube.com/​watch?​v=t3Qhon7burE
 +==== Basic operations ====
 +=== Add a subtree to the current project ===
 +
 +<​code>​
 +# Add the new remote to the project
 +git remote add -f <remote name> <remote address>
 +# Attach the new code
 +git subtree add --prefix <​folder>​ <remote name> <​branch>​ --squash
 +</​code>​
 +
 +Example:
 +<​code>​
 +git remote add -f cc_lib http://​gitea.codi.coop/​codi.cooperatiu/​cc_lib.git
 +git subtree add --prefix cc_lib cc_lib master --squash
 +</​code>​
 +
 +=== Pull from remote ===
 +<​code>​
 +git fetch <remote name>
 +git subtree pull --prefix <​path>​ <remote name> <​branch>​ --squash
 +</​code>​
 +
 +Example
 +<​code>​
 +git fetch tpope-vim-surround master
 +git subtree pull --prefix .vim/​bundle/​tpope-vim-surround tpope-vim-surround master --squash
 +</​code>​
 +
 +=== Update the remote ===
 +//Remind to commit before!!//
 +<​code>​
 +git remote add <​remote_name>​ <​remote_address>​
 +git subtree push --prefix=<​path>​ <remote name> <​branch>​
 +</​code>​
 +
 +Example:
 +<​code>​
 +git remote add cc_lib http://​gitea.codi.coop/​codi.cooperatiu/​cc_lib.git
 +git subtree push --prefix=cc_lib cc_lib master
 +</​code>​
 ===== Notes ===== ===== Notes =====
 +
 +GitLab'​s **"​merge request"​** feature is equivalent to GitHub'​s** "pull request"​** feature. Both are means of pulling changes from another branch or fork into your branch and merging the changes with your existing code. They are useful tools for code review and change management.
 +
 +
 ==== Inner architecture ==== ==== Inner architecture ====
 Everything stored in git is in a file. When you create a commit it creates a file containing your commit message and associated data (name, email, date/time, previous commit, etc) and links it to a tree file. The tree file contains a list of objects or other trees. Everything stored in git is in a file. When you create a commit it creates a file containing your commit message and associated data (name, email, date/time, previous commit, etc) and links it to a tree file. The tree file contains a list of objects or other trees.
Línea 196: Línea 251:
   * https://​www.atlassian.com/​git/​tutorials/​gitignore/​   * https://​www.atlassian.com/​git/​tutorials/​gitignore/​
  
 +==== Problems with certificates ====
 +
 +You can solve them by [1] [[wiki2:​linux_howto#​update_system_certificate_authority|updating the certificate authority]] or [2] ''​export GIT_SSL_NO_VERIFY=1''​ or [3] ''​git config --global http.sslverify false''​.
  
wiki2/gitconcepts.1541586297.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)