<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Alexis Zamanidis</title>
    <description>The latest articles on DEV Community by Alexis Zamanidis (@alexiszamanidis).</description>
    <link>https://dev.to/alexiszamanidis</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F856035%2F24f7504b-4a3d-492c-98ee-57a13b3fbb33.png</url>
      <title>DEV Community: Alexis Zamanidis</title>
      <link>https://dev.to/alexiszamanidis</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/alexiszamanidis"/>
    <language>en</language>
    <item>
      <title>Handling Incomplete GitHub Issues in Your Open Source Project</title>
      <dc:creator>Alexis Zamanidis</dc:creator>
      <pubDate>Tue, 19 Aug 2025 23:26:24 +0000</pubDate>
      <link>https://dev.to/alexiszamanidis/handling-incomplete-github-issues-in-your-open-source-project-13</link>
      <guid>https://dev.to/alexiszamanidis/handling-incomplete-github-issues-in-your-open-source-project-13</guid>
      <description>&lt;p&gt;If you maintain an open source project, you’ve probably seen this scenario: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Someone opens a GitHub issue with almost no details.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You get something like:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“It doesn’t work!”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;No steps to reproduce, no environment info, not even the version they’re using. Frustrating, right?  &lt;/p&gt;

&lt;p&gt;For maintainers, these vague issues can become a huge time sink. You spend more time chasing details than actually solving the problem.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why this happens
&lt;/h2&gt;

&lt;p&gt;Many contributors are new to GitHub or open source. They know there’s a problem but don’t know &lt;strong&gt;what information is important&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;As a project maintainer, it’s up to you to &lt;strong&gt;make it easy for them to communicate clearly&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Your solution: GitHub Issue Templates
&lt;/h2&gt;

&lt;p&gt;If you have an open source project, &lt;strong&gt;issue templates&lt;/strong&gt; are your best friend. They guide contributors to provide the right details upfront.  &lt;/p&gt;

&lt;p&gt;For example, a &lt;strong&gt;Bug Report Template&lt;/strong&gt; can ask for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Steps to reproduce
&lt;/li&gt;
&lt;li&gt;Expected vs. actual behavior
&lt;/li&gt;
&lt;li&gt;Environment details (OS, browser, versions)
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A &lt;strong&gt;Feature Request Template&lt;/strong&gt; can ask for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Motivation for the feature
&lt;/li&gt;
&lt;li&gt;Use cases
&lt;/li&gt;
&lt;li&gt;Possible implementation ideas
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By providing a clear structure, you reduce back-and-forth and get issues that are actionable from day one.&lt;/p&gt;

&lt;h3&gt;
  
  
  How it looks when a contributor creates a new issue
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Create new issue&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fetglo17h963x2tedzmu1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fetglo17h963x2tedzmu1.png" alt=" " width="800" height="177"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bug Report&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ic21pz25o04ofdaqzd8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1ic21pz25o04ofdaqzd8.png" alt=" " width="800" height="642"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  My experience as a maintainer
&lt;/h2&gt;

&lt;p&gt;After adding issue templates to my projects, I noticed a huge improvement:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Contributors provided detailed information from the start
&lt;/li&gt;
&lt;li&gt;Debugging and fixing issues became faster
&lt;/li&gt;
&lt;li&gt;Overall collaboration improved
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Even a small project benefits from templates: they save time, reduce frustration, and keep your community happy.&lt;/p&gt;




&lt;h2&gt;
  
  
  Takeaway
&lt;/h2&gt;

&lt;p&gt;If you maintain an open source project, &lt;strong&gt;don’t wait for contributors to “figure it out.”&lt;/strong&gt; Set up GitHub issue templates.  &lt;/p&gt;

&lt;p&gt;It’s a simple way to improve communication, streamline your workflow, and help your project thrive.  &lt;/p&gt;

&lt;p&gt;Open source works best when everyone knows how to collaborate effectively, and issue templates make that easy.&lt;/p&gt;




&lt;h2&gt;
  
  
  Bonus: How to add an issue template on GitHub
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Go to your repository on GitHub.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Settings → Issues → Set up templates&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Choose &lt;strong&gt;Bug report&lt;/strong&gt;, &lt;strong&gt;Feature request&lt;/strong&gt;, or &lt;strong&gt;Custom template&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Fill out the sections to guide contributors.&lt;/li&gt;
&lt;li&gt;Save and commit the template.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Now, every new issue will prompt the contributor to fill out the relevant details.&lt;/p&gt;

</description>
      <category>github</category>
    </item>
    <item>
      <title>VS Code Git Worktrees</title>
      <dc:creator>Alexis Zamanidis</dc:creator>
      <pubDate>Sun, 01 May 2022 09:15:27 +0000</pubDate>
      <link>https://dev.to/alexiszamanidis/git-worktrees-in-vs-code-1cka</link>
      <guid>https://dev.to/alexiszamanidis/git-worktrees-in-vs-code-1cka</guid>
      <description>&lt;h1&gt;
  
  
  VS Code Git Worktrees
&lt;/h1&gt;

&lt;p&gt;A Wrapper for Git Worktree Operations that provides an interactive API so developers can have a better experience.&lt;/p&gt;

&lt;h3&gt;
  
  
  Links
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/alexiszamanidis/vscode-git-worktrees" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://marketplace.visualstudio.com/items?itemName=GitWorktrees.git-worktrees" rel="noopener noreferrer"&gt;Marketplace&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Purpose of the extension
&lt;/h3&gt;

&lt;p&gt;After creating a ZSH plugin that was responsible for wrapping up my daily git operations(&lt;a href="https://github.com/alexiszamanidis/zsh-git-fzf" rel="noopener noreferrer"&gt;zsh-git-fzf&lt;/a&gt;), I found myself very often switching between the terminal and my main Editor(VS Code). So I decided to create an extension for my main Editor that would help me avoid switching between them and keep everything in one tool.&lt;/p&gt;

&lt;h3&gt;
  
  
  Requirements
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;  Git version: 2.34.1&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Supported operations
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;git worktree add [new-branch] [remote-branch]&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Create a new worktree&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Behavior&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  If you do not select a remote branch(&lt;code&gt;ESC&lt;/code&gt;), you will create a new worktree with the new branch you typed. This was made for convenience, instead of having &lt;code&gt;git worktree add master master&lt;/code&gt;, you can just run &lt;code&gt;git worktree add master&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;p&gt;&lt;code&gt;git worktree list&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Display all worktrees and switch between them&lt;/p&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;p&gt;&lt;code&gt;git worktree remove [worktree-name]&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Remove a worktree&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Behavior&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  If you have untracked or modified files a Popup will be shown at the bottom left of the screen.

&lt;ul&gt;
&lt;li&gt;  If you want to force delete the worktree with the untracked or modified files, just click &lt;code&gt;Force delete&lt;/code&gt; on the Popup&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Restrictions&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  You cannot delete the same Worktree as the one you are currently working on&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h3&gt;
  
  
  Getting started
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Steps:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Install &lt;a href="https://marketplace.visualstudio.com/items?itemName=GitWorktrees.git-worktrees" rel="noopener noreferrer"&gt;Git Worktree&lt;/a&gt; VS Code extension&lt;/li&gt;
&lt;li&gt;  Open the palette: &lt;code&gt;CTRL + SHIFT + P&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;  Search for any available operations

&lt;ul&gt;
&lt;li&gt;  Prefix: &lt;code&gt;Git Worktree:&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h3&gt;
  
  
  Features/Operations/Error
&lt;/h3&gt;

&lt;p&gt;If you are not able to see the GIFs in the post, take a look at GitHub &lt;a href="https://github.com/alexiszamanidis/vscode-git-worktrees#featuresoperationserror" rel="noopener noreferrer"&gt;README&lt;/a&gt; and open each GIF in a new tab.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Worktree Add (Create)&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa3b6j1fgltboadj8xsno.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa3b6j1fgltboadj8xsno.gif" alt="worktree-add" width="690" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Worktree List (Switch)&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp6w5xrk3fyz48w2sxwe8.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp6w5xrk3fyz48w2sxwe8.gif" alt="worktree-list" width="720" height="348"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Worktree Remove&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk65a5nooh9z3wnzupix3.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fk65a5nooh9z3wnzupix3.gif" alt="Worktree remove" width="760" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Error&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If anything goes wrong a Popup will be shown at the bottom left of the screen&lt;/p&gt;

&lt;p&gt;If you see anything weird, please open an &lt;a href="https://github.com/alexiszamanidis/vscode-git-worktrees/issues" rel="noopener noreferrer"&gt;issue&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fer8opgyf0xzz3uzc95es.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fer8opgyf0xzz3uzc95es.gif" alt="error" width="760" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Properties
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Property&lt;/th&gt;
&lt;th&gt;Type&lt;/th&gt;
&lt;th&gt;Default value&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;vsCodeGitWorktrees.remove.stalledBranches&lt;/td&gt;
&lt;td&gt;boolean&lt;/td&gt;
&lt;td&gt;false&lt;/td&gt;
&lt;td&gt;Removes local(stalled) branches that do not exist on remote&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Contribution
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  Reporting a bug&lt;/li&gt;
&lt;li&gt;  Improving this documentation&lt;/li&gt;
&lt;li&gt;  Writing tests&lt;/li&gt;
&lt;li&gt;  Sharing this project and recommending it to your friends&lt;/li&gt;
&lt;li&gt;  Giving a star on this repository&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://github.com/alexiszamanidis/vscode-git-worktrees/blob/master/TODO.md" rel="noopener noreferrer"&gt;TODO&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Run the Extension locally&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# install dependencies&lt;/span&gt;
yarn
&lt;span class="c"&gt;# compile code and watch input files&lt;/span&gt;
yarn watch
&lt;span class="c"&gt;# Then, inside the editor, press F5. This will&lt;/span&gt;
&lt;span class="c"&gt;# compile and run the extension in a new Extension&lt;/span&gt;
&lt;span class="c"&gt;# Development Host window.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  License
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/alexiszamanidis/vscode-git-worktrees/blob/master/LICENSE" rel="noopener noreferrer"&gt;MIT © Alexis Zamanidis&lt;/a&gt;&lt;/p&gt;

</description>
      <category>git</category>
      <category>worktree</category>
      <category>vscode</category>
      <category>extension</category>
    </item>
  </channel>
</rss>
