LNCD

Table of Contents

  • LNCD Home
  • Administration
  • Notebooks
  • Journal Club Presentations
  • Publications
  • Current Projects
  • Completed Projects
  • Current Grants
  • Datasets by Project
  • Brain ROIs and Measures
  • ️Tools And Methods
  • Big Data
  • RA Homepage
  • Recent Changes
  • Maintenance
  • Site Map
  • Random Page
LNCD
Admin » Github setup

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tools:github [2025/10/16 10:49] – [Github setup] willtools:github [2025/12/12 15:33] (current) – [Authentication] martineza10
Line 1: Line 1:
 ====== Github setup ====== ====== Github setup ======
 +Github (source forge) is not git (local-first distributed source control management software)! See [[:tools:git]] for using ''git''.
 +
  
 Github setup includes Github setup includes
   - [[#new_repo|creating]] or [[#existing_repo|finding]] an existing remote github repository url   - [[#new_repo|creating]] or [[#existing_repo|finding]] an existing remote github repository url
-  - syncing that with your files (on your computer, on rhea, on PSC, etc);+    * use **ssh** url like ''git@github.com:group/repo'' ( instead of ''%%https://github.com/group/repo%%'')  
 +    * avoid conflicting histories: <wrap important>dont generate a readme when creating a new repo</wrap>  
 +  - syncing that with your files (on your computer, on rhea, on PSC, etc) 
 +    * <wrap tip> be sure you ''cd'' to the right directory before running ''git'' commands</wrap>
   - [[#ssh_keys|authenticating]] with github for ''git push'' permissions.    - [[#ssh_keys|authenticating]] with github for ''git push'' permissions. 
     * <wrap tip>ssh keys recommended</wrap>     * <wrap tip>ssh keys recommended</wrap>
-    * <wrap alert> ''sshkey-gen'' only once per user@server. don't run if existing ''~/.ssh/id*.pub''</wrap>+    * <wrap alert> ''ssh-keygen'' only once per user@server. don't run if existing ''~/.ssh/id*.pub''</wrap>
  
 ===== New Repo ===== ===== New Repo =====
Line 15: Line 20:
    
   *  {{.:pasted:20251016-101712.png?100}} http://github.com/new or Home > green new repo   *  {{.:pasted:20251016-101712.png?100}} http://github.com/new or Home > green new repo
-  * {{.:pasted:20251016-101911.png?100}} Follow form to assign a name.  <wrap important>only add readme, lic, etc if no project files exist yet</wrap> +  * {{.:pasted:20251016-101911.png?100}} Follow form to assign a name.  <wrap important>only add readme, lic, etc if no project files exist locally yet</wrap> 
   * {{.:pasted:20251016-102226.png?200}} Follow the instructions github provides <wrap tip>be sure to ''cd'' into the code directory before running ''git'' commands</wrap>  <code bash add_remote.bash>   * {{.:pasted:20251016-102226.png?200}} Follow the instructions github provides <wrap tip>be sure to ''cd'' into the code directory before running ''git'' commands</wrap>  <code bash add_remote.bash>
 cd my-exsiting-data/ # go to the directory of your existing code cd my-exsiting-data/ # go to the directory of your existing code
Line 25: Line 30:
   * Copy the ssh url of your new repository. Green ''<> Code'' button > ''Local'' Tab > ''SSH'' header.   * Copy the ssh url of your new repository. Green ''<> Code'' button > ''Local'' Tab > ''SSH'' header.
 {{:tools:pasted:20251016-101450.png?200|}} {{:tools:pasted:20251016-101450.png?200|}}
-  * Clone the copied url like ''git clone git@github.com/$USER/$REPO''+  * Clone the copied url like <code bash>git clone git@github.com/$USER/$REPO</code>
 ===== Authentication ===== ===== Authentication =====
-For ''git push'' to  github, you'll need some way to confirm your credentials. Authentication can happen with <wrap tip>**ssh keys** (recommended)</wrap> or an **app password**+For ''git push'' to  github, you'll need some way to confirm your credentials. Authentication can happen with <wrap tip>**ssh keys** (recommended)</wrap> or an **app password**   
 + 
 +when using ssh keys (recommended) use ''git@github.com:group/repo'' (repo url) to use ssh-key based authentication -- on the terminal you can  
 +switch from https to ssh using ''vim .git/config'' 
 + 
 +{{.:pasted:20251212-153335.png}}
 ==== ssh keys ==== ==== ssh keys ====
  
-''git push'' can use ssh authentication. You need a key likely in ''~/.ssh/id_ed25519.pub''. +''git push'' can use ssh authentication unique to a user and computer pair. You need a key likely in ''~/.ssh/id_ed25519.pub''.
  
  
 Contents of ''~/.ssh/id_ed25519.pub'' should be pasted into ''new ssh key'' modal on https://github.com/settings/keys ((''top right user icon''->''settings''->''ssh and GPG keys'' -> ''new ssh key'')) Contents of ''~/.ssh/id_ed25519.pub'' should be pasted into ''new ssh key'' modal on https://github.com/settings/keys ((''top right user icon''->''settings''->''ssh and GPG keys'' -> ''new ssh key''))
 +<code bash>
 +cat ~/.ssh/id_ed25519.pub
 +</code>
 +
  
 {{:tools:pasted:20231024-130110.png?300}} {{:tools:pasted:20231024-130110.png?300}}